十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
样本CSV文件如下:
十年的海曙网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整海曙建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“海曙网站设计”,“海曙网站推广”以来,每个客户项目都认真落实执行。
ERROR 1148 (42000): The used command is not allowed with this MySQL version.
通过命令行导入(要求列与列之间以 英文逗号 分割,若字段中含有 , 则以 " 包裹)
load data infile 'D:/mysql-5.7.29-winx64/files/ratings_5.csv' into table ratings fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\r\n';
踩坑一:文件路径用 \ 分割会报错,用 / 可(用 \\ 应该也可)
踩坑二:load data 命令报错
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
在 my.ini 中加入(空字符串代表允许从一切目录导入)
[mysqld]
secure-file-priv=''
然后再 Windows 的服务中重新启动 mysql
踩坑三:csv 文件中第一行是诸如 userId 这样的列名
如果你的 csv 文件不大,直接使用 notepad++ 打开后删除第一行即可
但在我们这里,千万级别的文件 notepad++ 无法打开,这时可以考虑两种方法
1. 将 csv 文件传入 Linux 服务器删去第一行
由于不知道如何在 Win 10 中做这个操作,只能通过 Linux 中转执行
sed -i '1d' ratings.csv
检验是否成功,可以打印出第一行观察
cat ratings.csv | head -n 1
2. 通过工具把大的 csv 分成多个 notepad 能够打开的较小文件,对第一个文件删除第一行并依次导入
工具:splitcsv
亲测 5000000 条数据的 csv 文件可以在 notepad++ 中打开(只能同时打开 3 个)
这个工具还有个小坑:ratings_0.csv 的最后一行和 ratings_1.csv 的第一行是重复的,请手动删除
将CSV文件导入数据库的方法有很多种,可以使用脚本、数据库客户端或者数据库提供的管理功能来实现。比如可以在MySQL中使用LOAD DATA INFILE命令,在SQL Server中使用BCP命令,在Oracle中使用SQL*Loader等。
拓展:另外,还可以使用编程语言,比如Java或者Python,开发一个专门的程序来实现csv文件到数据库表之间的转换。
1.首先在MySQL中创建对应CSV文件格式的表
2.右键选中新建的表,点击导入向导
3.在弹出的选项框中选择CSV文件格式,点击下一步。
6.选择CSV文件中数据的字段名行和数据的开始行,点击下一步(注意这里一定要选择正确不然会导致导入数据出错)