ubuntu使用mysql数据库的一些知识点

一、导入csv数据到mysql

用wps Spreadsheets (windows下可以用excel)将客户或策划做的xlsx文件转换为csv格式,但是里面可能会有逗号。凡是有逗号的字段,会用双引号将其中内容“包围”起来,所以在输入数据库的时候必须特别说明。

LOAD DATA LOCAL INFILE "filename.csv"
INTO TABLE tableName
CHARACTER SET utf8
FIELDS TERMINATED BY ","
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '"';

注意,那个LOCAL描述很重要,不写的话权限错误,然后去百度各种权限设置就掉进沟沟里面了。FIELDS TERMINATED BY ","的意思是字段以逗号分隔;OPTIONALLY ENCLOSED BY '"'和ESCAPED BY '"'的意思就是文本字段可能以双引号开始双引号结束。

数据库和表都应该提前设置为utf-8的,否则乱码。

其他问题:
当CSV最后一个字段为中文时,在数据库里面一看看不出什么问题,但是点开字段内容或者列表到命令行就会发现,字段内容最后多了一个 \r

我重新导入了一次,采取的方法是把最后一个字段换为数字类型字段。
另外,可以将前面导入的命令后面加一句:

lines terminated by "\r\n"

表示这个文件行结尾是\r\n,应该同样能解决问题。
系统应该是默认每一行以\n结尾,所以多出了一个\r。
我没有实测。理论上就是这样。

还有好多,有时间再来记录。掉了无数次坑总结出来的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、引言 数据库设计过程中表、字段等的命名规范也算是设计规范的一部分,不过设计规范更多的是为了确保数据库设计的合理...
    SnowflakeCloud阅读 41,186评论 0 48
  • 1.MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。My...
    黄花菜已凉阅读 10,024评论 3 60
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,084评论 19 139
  • “我在生活中时常能碰到这样的情况,突然对某个领域感兴趣的时候,就会发现相关的书籍已经躺在书架上好久了,而我却好像从...
    Cici玉芳阅读 3,538评论 0 50
  • 万事都能熟能生巧 你不用拿我当借口任何人当借口 真的 早点睡不会怎样 家里人总是会以家里人当借口 睡不着是因为有人...
    ShAvIn阅读 2,773评论 0 0

友情链接更多精彩内容