)mysqlimport的语法介绍
mysqlimport位于mysql/bin目录中是mysql的一个载入(或者说导入)数据的一个非常有效的工具这是一个命令行工具有两个参数以及大量的选项可供选择这个工具把一个文本文件(text file)导入到你指定的数据库和表中比方说我们要从文件Customerstxt中把数据导入到数据库Meet_A_Geek中的表Custermers中
mysqlimport Meet_A_Geek Customerstxt
注意这里Customerstxt是我们要导入数据的文本文件 而Meet_A_Geek是我们要操作的数据库
数据库中的表名是Customers这里文本文件的数据格式必须与Customers表中的记录格式一致否则mysqlimport命令将会出错 其中表的名字是导入文件的第一个句号()前面文件字符串另外一个例子
mysqlimport Meet_A_Geek rstxt
那么我们将把文件中的内容导入到数据库Meet_A_Geek 中的Cus表中
上面的例子中都只用到两个参数并没有用到更多的选项下面介绍mysqlimport的选项
)mysqlimport的常用选项介绍:
选项 功能
d or delete 新数据导入数据表中之前删除数据数据表中的所有信息
f or force 不管是否遇到错误mysqlimport将强制继续插入数据
i or ignore mysqlimport跳过或者忽略那些有相同唯一关键字的行 导入文件中的数据将被忽略
l or locktables 数据被插入之前锁住表这样就防止了 你在更新数据库时用户的查询和更新受到影响
r or replace 这个选项与-i选项的作用相反此选项将替代表中有相同唯一关键字的记录
fieldsenclosed by= char
指定文本文件中数据的记录时以什么括起的 很多情况下数据以双引号括起 默认的情况下数据是没有被字符括起的
fieldsterminated by=char
指定各个数据的值之间的分隔符在句号分隔的文件中分隔符是句号您可以用此选项指定数据之间的分隔符默认的分隔符是跳格符(Tab)
linesterminated by=str
此选项指定文本文件中行与行之间数据的分隔字符串 或者字符 默认的情况下mysqlimport以newline为行分隔符 您可以选择用一个字符串来替代一个单个的字符 一个新行或者一个回车
mysqlimport命令常用的选项还有v 显示版本(version) p 提示输入密码(password)等
)例子导入一个以逗号为分隔符的文件
文件中行的记录格式是这样的
ORD Dozen Roses
我们的任务是要把这个文件里面的数据导入到数据库Meet_A_Geek中的表格Orders中 我们使用这个命令:
bin/mysqlimport –prl –fieldsenclosedby= –fieldsterminatedby= Meet_A_Geek Orderstxt
这个命令可能看起来很不爽不过当你熟悉了之后这是非常简单的第一部分bin/mysqlimport 告诉操作系统你要运行的命令是mysql/bin目录下的mysqlimport选项p是要求输入密码这样就要求你在改动数据库之前输入密码操作起来会更安全 我们用了r选项是因为我们想要把表中的唯一关键字与文件记录中有重复唯一关键字的记录替换成文件中的数据我们表单中的数据不是最新的需要用文件中的数据去更新因而就用r这个选项替代数据库中已经有的记录l选项的作用是在我们插入数据的时候锁住表这样就阻止了用户在我们更新表的时候对表进行查询或者更改的操作