mysql将格式化文本数据导入数据库

前提:文本数据必须是格式化好的,比如下格式


张三|1988.2.3|湖北武汉|武汉大学

李四 |990.5.6|湖南湘潭|湖南大学

王五|1991.6.12|北京|北京理工大学


第1字段 张三          第  2 字段 1988.2.3          第  3字段湖北武汉            第  4字段武汉大学  中间以“|”分隔各个字段,分隔符可以自选,



数据库中的字段也必须满足一些要求:

比如导入如上信息时数据库的字段必须是四个,数据库字段类型也必须与文本数据转换出来的类型匹配,这里四个字段都可以设置为varchar类型,

另外如果某一行数据中有某个字段是空的,那么对应的数据库字段必须允许为空,例如加入第一项张三的学校为空,那么数据库的第四个字段也必须

允许为空,还要注意的一点就是数据库的导入是按字段顺序导入的,所以注意不要将字段倒错位了。比如如果你的数据库的四个字段为

姓名    出生日期   户籍地址   毕业院校  那么你就可以正确导入,如果是姓名     毕业院校   户籍地址    出生日期 那么你导入后毕业院校的信息就被填成

了出生日期,而出生日期就被填成了毕业院校。


mysql没有工具直接导入文件,必须用sql命令:

LOAD DATA LOCAL INFILE    'E:\\student.txt'     INTO   TABLE   `student` Fields Terminated By '|' Lines Terminated By '\n'

说明: 

'E:\\student.txt':是你的要导入数据库的文本文件的绝对路径,(linux下也一样),这里有两个”\“是因为路径中的斜线要转义

  '|'  :各个字段信息的分隔符,分隔符是可以自选的,

 '\n':每行信息的结束符,这里是换行符,(这里要注意兼容性,因为不同的平台不同的操作系统换行符是不一样的)


当你设置好这些信息后就可以运行上面的命令导入数据了,要注意的一点是mysql workbench没法打开不带primary key的表,如果用mysql workbench操作

的话想要查看表的数据你还得给表加上主键。


不足之处还望高手多多指正


你可能感兴趣的:(sql,mysql,数据库,linux,table,工具)