最近做机器学习,在网上找到了一些数据要进行做实验。现在下来的是.CSV的文件,因为数据量比较大,故我需要把其导入到数据库中,我使用的数据库是Mysql5.7版本。
注意,Mysql为用户提供了专门的导入数据库的函数,即为Load_file(),故我们其实直接在任何能执行sql命令的地方执行如下的指令就行。
csv导入mysql
load data infile 'C:\\Users\\UserName\\Desktop\\test.csv'
into table `table` //此时的'table'为表明,根据自己的需要进行更改,注意需要指定数据库名,如果有默认的数据库名也行
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
mysql导入csv
select * from `table`
load data infile 'C:\\Users\\UserName\\Desktop\\test.csv'
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
如果乱码,可用相关编辑器打开.csv文件,另存为utf-8的csv
注意事项:1.在进行导入的时候如果提示如下错误:Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
这个错误指的是在mysql的配置里面已经设置好了一个专门用来导入数据库的目录,你只有把文件放到这个目录下才能把文件的内容导入到数据库中,那么问题来了,你怎么找到这个目录呢?
2. 查看安装的mysql的目录,我的是在C:\ProgramData\MySQL\MySQL Server 5.7,在这个目录下有一个文件my.ini
这个文件就是你的mysql配置文件,打开文件,直接搜索secure迅速定位到secure-file-priv 项,如图
也就是说我的mysql的导入文件的目录是在如图的目录下,然后我找到这个目录
最后我导入数据库,
最后提示执行成功:
15:55:50 load data infile 'C:\\ProgramData\\MySQL\\MySQL Server 5.7\\Uploads\\movies.csv' into table `movies` fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\n'
33870 row(s) affected Records: 33870 Deleted: 0 Skipped: 0 Warnings: 0 1.703 sec
本文介绍了如何将CSV文件导入到MySQL5.7数据库中,使用`LOAD DATA INFILE`命令,并解决了因`secure-file-priv`选项导致的导入限制问题。在遇到错误1290时,需要修改my.ini配置文件,指定允许导入的目录,最终成功导入数据。
856

被折叠的 条评论
为什么被折叠?



