怎么在MySQL中导入csv和excel

42次阅读
没有评论

共计 1285 个字符,预计需要花费 4 分钟才能阅读完成。

自动写代码机器人,免费开通

怎么在 MySQL 中导入 csv 和 excel?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1. 导入 csv 文件

使用如下命令:

 1.mysql  load data infile  your csv file path  into table [tablename] fields terminated by  ,

上面的 csv 文件以 , 逗号作为分割符,需要用双引号或者单引号括起来。如果是以 \t 制表符作为分隔符的话,可不用显示指明域分割符。

还有一点需要注意,csv 文件或者文本文件的路径要使用绝对路径,否则 mysql 会默认从数据库存储的目录寻找,找不到就会报如下错误:

ERROR 13 (HY000) at line 1: Can t get stat of  /var/lib/mysql/PromotionGroup/attempt_1467708933142_34285938_m_000000_0.1469434545564  (Errcode: 2)

perror 2 查看一下错误码代表的意思:OS error code 2: No such file or directory。意思就是没有指定的文件或者目录。

如果使用绝对路径之后还是会报如下错误:

ERROR 13 (HY000) at line 1: Can t get stat of  /fullpath/file.csv  (Errcode: 13)

使用命令 perror 13 查看错误类型:OS error code 13: Permission denied。根据错误的提示,顺其自然的检查文件是否有可读权限,结果是有的,于是各种百度都没有得到正确的答案,百思不得其解,最终选择 google 在 stackoverflow 找到了我想要的答案。

Try to use LOAD DATA LOCAL INFILE instead of LOAD DATA INFILE.

使用 LOAD DATA LOCAL INFILE 尝试一下,结果真的可以了!

load data local infile 与 load data infile 的区别是什么呢?

使用 LOCAL 关键词,从客户主机读文件。不使用 LOCAL,从服务器读取文件。

很奇怪的是,我的文件是在服务器上的,但是不使用 local 就会出错,真搞不明白!

2. 导入 excel 文件

无需指定分割符。直接使用下面的命令:

mysql  load data infile  your excel file path  into table [tablename]

注意上面导入文件时,都需要提前建立好与文件内各个段对应好的数据表。并且文件的路径需要使用引号括起来,双引号和单引号都可以。

3. 导入 sql 文件

无需提前建立好数据表,直接使用 source 命令:

source /home/abc/abc.sql;

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计1285字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)