文本数据如何批量导入Mysql? ~在线急等~ 1 分析文件名2 读取文件内容3 写入数据库提示:可以利用dir foreach explode 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 由于目标php论坛只支持对主题的回复,所以必须把对回复的回复转化成对主题的回帖,即要把1-1-1.txt重命名为1-n.txt,这个程序如何写呢?我自己的构想是先实现上述文件的重命名,然后把所有数据文本经处理后写入一个文本文件,最后通过phpmyadmin的文本导入功能写入数据库。但很难写出代码,有谁能帮帮我呢? ------期待中。。 严重考虑 syre(神仙) 的做法!!!把数据目录下的文本文件逐个的遍历,然后存入数组中,再编历数组,读取出每个文本文件中的内容,通过explode()函数来分析格式,然后存成数组,倒入到mysql中,依此进行....我不知道具体,只能给你这么一个思路,呵呵,瞎说的,别见怪!! 只要你定下了mysql的表结构,然后你就尝试如果你手动导入一条数据都要做什么,然后把这个过程用php重新写一下就可以了,还有你原来是写cgi的话,你用perl的DBI连mysql,导这些数据也应该是可以的,不过是用一次的脚本,多查查手册应该可以搞定的吧。 感谢上面的回复的网友,我想大家的思路都基本一致,我希望有没有哪位能提供一点原代码出来。因为我两个程序都不是我写的,本身也只懂一点点php和asp,多谢了! 那就把你的文本文件的格式贴出来,再把你mysql库的结构贴出来,没有这些你让大家怎么写代码啊。 谢谢各位啦!既然大家这样有心,我就详细介绍一下这次任务,请大家帮忙写写代码。原BBS采用的是Spboard V4.5,这是生成的一个文件名为1000的数据文本内容:spehzKOPWy3Fc***|***@sina.com||有心帮忙的人请看!|2004/05/16 [15:39]||| 表情18~大家好,我是武汉的一名国际经济与贸易专业的学生,想利用暑假时间出去实习,不知道有没有哪位好心人帮我推荐推荐,在此不胜感激! 表情21~||||||1|||211.154.211.***|Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)|http://||||---------------------以下为结构分析:密码|发帖人|发帖人email|法帖人主页|帖子标题|发贴时间|帖子内容|发帖人ip|发帖人的OS和IE属性|此帖连接文件||||---------------------注:主题的id号为帖子的文件名,对主题的回帖的文件名为格式为1000-1,对回帖的回复文件名格式为1000-1-1,依此类推;第一行应该是密码,新php论坛不需要;为了保护隐私,故用***替代了发帖者的姓名、email和ip;|为原cgi留言板的字段分割符,两个|之间为空表示改字段的值为NULL------------------新论坛采用PHPBB2,以下是目标Mysql相关表的结构:表post: 字段 类型 属性 NULL 默认 额外 post_id mediumint(8) UNSIGNED 否 auto_increment topic_id mediumint(8) UNSIGNED 否 0 forum_id smallint(5) UNSIGNED 否 0 poster_id mediumint(8) 否 0 post_time int(11) 否 0 poster_ip varchar(8) 否 post_username varchar(25) 是 NULL enable_bbcode tinyint(1) 否 1 enable_html tinyint(1) 否 0 enable_smilies tinyint(1) 否 1 enable_sig tinyint(1) 否 1 post_edit_time int(11) 是 NULL post_edit_count smallint(5) UNSIGNED 否 0 -------注:post_id从1开始,对应原数据文本的文件名自动增加; topic_id都设成1,forum_id都为2;poster_id为-1;“星期一 10 04, 2004 9:14 pm”的 post_time值为1096895669;poster_ip存储去掉.的十六进制数值,比如127.0.0.1的poster_ip字段值为7f000001;enable_bbcode\enable_html\enable_smilies\enable_sig分别设成1\1\1\0;post_edit_time留空并把post_edit_time都设成0--------- 表post_text: 字段 类型 属性 NULL 默认 post_id mediumint(8) UNSIGNED 否 0 bbcode_uid varchar(10) 否 post_subject varchar(60) 是 NULL post_text text 是 NULL ------------------注:bbcode_uid不知为何用,这几个是样本值:fcf9e03a1b e2644df4ef bbfc82f6e7,大家也不清楚就让它取fcf9e03a1b这是一个由我的外贸老师创办的专门为外贸工作者服务、交流的公益平台,没有任何商业的成分,几年来解决了很多外贸人的问题和困惑。希望大家能发挥自己的特长,帮助我们实现论坛的换代升级,为中国的外贸事业作一把贡献,我们对你的帮助将感激不尽!现在运行的BBS名为外贸BBS,网址为:http://www.guomaoren.com/cgi-bin/spboard/board.cgi?id=intertrade 导入工作已经由delphi程序完成,只是新论坛对旧帖的查询表还未做出来,结贴了,下次再烦请各位出谋划策。 不好意思了,前些天有些事情没能上网来帮你解决问题.delphi我也喜欢,但只是入门,以后向你请教啊. moxiu.com这样的在线制作手机主题生成那怎么实现的 菜鸟提问:关于网络考试系统操作题批阅的代码 preg_match_all正则匹配不了第一位是中文,谢谢 mysql 如何在SQL语句里改变文本型字段的值 求助:两个表的数据对比问题(php+mysql) 关于centos6.4系统下php socket通信配置问题 如何把我网站上的图片铃声让用户下载到手机? 想换程序学习的大侠进来看看。 [求助]如何修改HTTP代理设置? ===刺手的问题=== 如何判断论坛帖子的新旧状态? 请问如何改变Maximum execution time呀?
我自己的构想是先实现上述文件的重命名,然后把所有数据文本经处理后写入一个文本文件,最后通过phpmyadmin的文本导入功能写入数据库。但很难写出代码,有谁能帮帮我呢?
------期待中。。
把数据目录下的文本文件逐个的遍历,然后存入数组中,再编历数组,读取出每个文本文件中的内容,通过explode()函数来分析格式,然后存成数组,倒入到mysql中,依此进行....我不知道具体,只能给你这么一个思路,呵呵,瞎说的,别见怪!!
因为我两个程序都不是我写的,本身也只懂一点点php和asp,多谢了!
,没有这些你让大家怎么写代码啊。
原BBS采用的是Spboard V4.5,
这是生成的一个文件名为1000的数据文本内容:
spehzKOPWy3Fc
***|***@sina.com||有心帮忙的人请看!|2004/05/16 [15:39]||
| 表情18~大家好,我是武汉的一名国际经济与贸易专业的学生,想利用暑假时间出去实习,不知道有没有哪位好心人帮我推荐推荐,在此不胜感激! 表情21~
|||||
|1||
|211.154.211.***|Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)|http://||||
---------------------
以下为结构分析:
密码|发帖人|发帖人email|法帖人主页|帖子标题|发贴时间|帖子内容|发帖人ip|发帖人的OS和IE属性|此帖连接文件||||
---------------------
注:
主题的id号为帖子的文件名,对主题的回帖的文件名为格式为1000-1,对回帖的回复文件名格式为1000-1-1,依此类推;
第一行应该是密码,新php论坛不需要;
为了保护隐私,故用***替代了发帖者的姓名、email和ip;
|为原cgi留言板的字段分割符,两个|之间为空表示改字段的值为NULL
------------------
新论坛采用PHPBB2,
以下是目标Mysql相关表的结构:
表post:
字段 类型 属性 NULL 默认 额外
post_id mediumint(8) UNSIGNED 否 auto_increment
topic_id mediumint(8) UNSIGNED 否 0
forum_id smallint(5) UNSIGNED 否 0
poster_id mediumint(8) 否 0
post_time int(11) 否 0
poster_ip varchar(8) 否
post_username varchar(25) 是 NULL
enable_bbcode tinyint(1) 否 1
enable_html tinyint(1) 否 0
enable_smilies tinyint(1) 否 1
enable_sig tinyint(1) 否 1
post_edit_time int(11) 是 NULL
post_edit_count smallint(5) UNSIGNED 否 0
-------
注:post_id从1开始,对应原数据文本的文件名自动增加;
topic_id都设成1,forum_id都为2;poster_id为-1;“星期一 10 04, 2004 9:14 pm”的 post_time值为1096895669;poster_ip存储去掉.的十六进制数值,比如127.0.0.1的poster_ip字段值为7f000001;enable_bbcode\enable_html\enable_smilies\enable_sig分别设成1\1\1\0;post_edit_time留空并把post_edit_time都设成0
---------
表post_text:
字段 类型 属性 NULL 默认
post_id mediumint(8) UNSIGNED 否 0
bbcode_uid varchar(10) 否
post_subject varchar(60) 是 NULL
post_text text 是 NULL
------------------
注:bbcode_uid不知为何用,这几个是样本值:fcf9e03a1b e2644df4ef bbfc82f6e7,大家也不清楚就让它取fcf9e03a1b
这是一个由我的外贸老师创办的专门为外贸工作者服务、交流的公益平台,没有任何商业的成分,几年来解决了很多外贸人的问题和困惑。希望大家能发挥自己的特长,帮助我们实现论坛的换代升级,为中国的外贸事业作一把贡献,我们对你的帮助将感激不尽!
现在运行的BBS名为外贸BBS,网址为:
http://www.guomaoren.com/cgi-bin/spboard/board.cgi?id=intertrade
delphi我也喜欢,但只是入门,以后向你请教啊.