免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3995 | 回复: 3
打印 上一主题 下一主题

如何用load data local infile 命令添加数据 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-06-02 19:50 |只看该作者 |倒序浏览
书上说:load data local infile 命令可以将txt文件内存出的数据加入到数据库中,可是老是出错。

云:file not found
txt文件的放置是不是有特殊要求,放哪?

论坛徽章:
0
2 [报告]
发表于 2003-06-05 08:35 |只看该作者

如何用load data local infile 命令添加数据

我在linux命令模式下进入mysql时,用过这个命令,应该是没问题的。txt文件格式应按要求与数据表一一对应。

论坛徽章:
0
3 [报告]
发表于 2003-06-07 14:58 |只看该作者

如何用load data local infile 命令添加数据

可是汉字老变成乱码!

论坛徽章:
0
4 [报告]
发表于 2003-06-07 18:40 |只看该作者

如何用load data local infile 命令添加数据

原帖由 "qxfmit" 发表:
书上说:load data local infile 命令可以将txt文件内存出的数据加入到数据库中,可是老是出错。

云:file not found
txt文件的放置是不是有特殊要求,放哪?
    在建设网站的过程中,经常要处理一些数据的导入及导出.在Mysql数据库中,有两种方法来处理数据的导出(一般).
1. 使用select * from table_name into outfile “file_name”;
2. 使用mysqldump实用程序
下面我们来举例说明:
假设我们的数据库中有一个库为samp_db,一个表为samp_table.现在要把samp_table的数据导出.则我们可以利用以下方法来实现:
在Mysql提示符下打入select * from samp_table into outfile “file_name”;
在系统命令提示符下打入mysqldump –u root samp_db samp_table >;samp.sql
(当然mysqldump有很多选项.如 -d 表示只导出表结构; -t 表示只导入表数据)
如何来处理数据的导入:一般我们在系统命令提示符下打入mysqlimport –u root samp_db samp_table.txt(注意:这个TXT文件名必须以表的名字命名).对于mysqldump导出的数据我们还可以用mysql –u root samp_db < file_name来导入.在Mysql提示符下我们用Load data infile “file_name” into table samp_table.
另外除了以上方法,对于移动后的数据库系统与原系统一致的前提下,我们可以通过文件的拷贝来实现数据的导入与导出.首先我们用mysqladmin –u root variables(在系统命令提示符下)或者用show variables;(在Mysql提示符下)来找到datadir.如在我的环境下,此目录在c:\mysql\data.然后对其中的一些文件进行拷贝.一切ok!
有了以上知识后,我们进入正题:如何把ACCESS的数据导入到Mysql中.
首先我们把数据从ACCESS中导出为文本文件.在导出过程中注意选择好字段分隔符和文本标识符,且查看一下文本文件,确定一个记录是否在同一行上,如不是,则手工把回车键除掉.假如我们导出的文本文件为c:\samp_table.txt.其内容如下:
1,张新化,男
2,江先进,女
接下来我们用mysqlimport –u root –fields-terminated-by=”\,” samp_db samp_table.txt
或者用load data infile “c:\\samp_table.txt” into table samp_table fields terminated by “\,”;
去试一下(注意转义字符),是不是一切ok!如果还不行,请仔细看一下具体命令的帮助.下面列出一些选项:
--fields-enclosed-by=char 指明列值应包括在指定的字符中.通常用引号.缺省时,假定列值不包括在任何字符中.
--fields-escaped-by=char 表示用于转义特殊字符的转义符.缺省时表示无转义符
--fields-terminated-by=char 指定分隔列的字符.缺省时假定列值由制表符分隔.
--lines-terminated-by=str 指定结束输入行的串(可以是多字符的).缺省时假定由换行符终止行.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP