MySQL导入csv、excel或者sql文件的小技巧

 更新时间:2018年05月04日 09:30:56   作者:Dablelv  
这篇文章主要介绍了MySQL导入csv、excel或者sql文件的小技巧,具有很好的参考价值,希望对大家有所帮助,一起跟随小编过来看看吧

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;

sql脚本无需双引号括起来。本质上使用source执行外部sql脚本,sql脚本会将sql脚本中附带的数据导入到创建的数据表中。

以上所述是小编给大家介绍的MySQL导入csv、excel或者sql文件的小技巧,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • MySQL RC事务隔离的实现原理

    MySQL RC事务隔离的实现原理

    这篇文章主要介绍了MySQL RC事务隔离的实现,Read Committed,事务运行期间,只要别的事务修改数据并提交,即可读到人家修改的数据,所以会有不可重复读、幻读问题,下文相关介绍需要的朋友可以参考下
    2022-03-03
  • 解决MySQL8.0 输入无误仍然提示Access denied问题

    解决MySQL8.0 输入无误仍然提示Access denied问题

    这篇文章主要介绍了解决MySQL8.0 输入无误仍然提示Access denied问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • MySQL主从状态检查的实现

    MySQL主从状态检查的实现

    这篇文章主要介绍了MySQL主从状态检查的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法示例

    MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法示例

    MySQL中AES_ENCRYPT('密码','钥匙')函数可以对字段值做加密处理,AES_DECRYPT(表的字段名字,'钥匙')函数解密处理,下面这篇文章主要给大家介绍了关于MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法,文中给出了详细的示例代码,需要的朋友可以参考下。
    2017-08-08
  • MySQ实现XA事务的具体使用

    MySQ实现XA事务的具体使用

    XA事务是一种分布式事务处理协议,本文主要介绍了MySQ实现XA事务的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • MySQL复合索引的深入探究

    MySQL复合索引的深入探究

    这篇文章主要给大家介绍了关于MySQL复合索引的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 优化mysql的limit offset的例子

    优化mysql的limit offset的例子

    在mysql中,通常使用limit做分页,而且经常会跟order by 连用。在order by 上加索引有时候是很有帮助的,不然系统会做很多的filesort
    2013-02-02
  • mysql sql_mode="" 的作用说明

    mysql sql_mode="" 的作用说明

    在看discuz源码时看到了sql_mode="",不知道是干嘛的,猜想是设置模式,但是不清楚是什么模式,于是从网上搜了下,sql_mode="" 的作用
    2011-08-08
  • MySQL中增删改查操作与常见陷阱详解

    MySQL中增删改查操作与常见陷阱详解

    这篇文章详细讲解了MySQL的增删改查的语句、语义和一些我们经常在开发工作中暴露的问题,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-11-11
  • MySQL和Redis的数据一致性问题

    MySQL和Redis的数据一致性问题

    这篇文章主要介绍了MySQL和Redis的数据一致性问题,下面文章围绕Redis大的相关资料展开详情,需要的小伙伴可以参考一下
    2022-04-04

最新评论