在现实生活中,我们可能需要往数据库中插入大量数据。
这时候我们可以直接将表格导入到数据库中。

示例1.导入txt

原始数据

第一步:创建表

CREATE TABLE IF NOT EXISTS POWER(useshuju INT(50)
);
DESC POWER;
SELECT * FROM POWER;

第二步:插入

语法
LOAD DATA LOCAL INFILE ‘文件路径’
INTO TABLE 表名
CHARACTER SET utf8
FIELDS TERMINATED BY ‘,’
LINES TERMINATED BY ‘\r\n’
IGNORE 1 LINES;#忽略表头,即表头不插入

LOAD DATA LOCAL INFILE 'C:\\Users\\Shineion\\Desktop\\shuju.txt'
INTO TABLE POWER
CHARACTER SET utf8
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;

说明下:

1.文件路径\或者/。路径问题,注意windows 下\和linux 下/的区别。
2.必须加local,如果不加,写成这样LOAD DATA INFILE,可能会出现错误
找不到文件。
fields terminated by ‘,’    ------字段间以,号分隔
optionally enclosed by ‘"’  ------字段用"号括起
escaped by ‘"’       ------字段中使用的转义符为"
lines terminated by ‘\r\n’ ------行以\r\n结束
(字段1,字段2,字段3);#字段可以不写,如果写即表示数据库的表和本地的表不是一一对应,数据库的表字段多余本地表。

第三步:查询

SELECT * FROM POWER;

示例2,导入csv

由于表格很多时候是gbk编码.
我们需要转换成utf8编码.

现在是这样处理的:
第一步,用Excel创建文件,另存为 .csv 格式;
第二步,用记事本打开 CSV 文件,然后另存为 UTF-8 格式

将问题转换成txt文件导入。

得到的文件示意图。

代码

CREATE TABLE IF NOT EXISTS POWER(id INT(50),#序号va FLOAT(50),#valuestimes DATETIME,#时间 timemins FLOAT(32),#minutehou FLOAT(32),#hourdom FLOAT(32)#dom
);
DESC POWER;
SELECT * FROM POWER;LOAD DATA LOCAL INFILE 'C:\\Users\\Shineion\\Desktop\\chufang.txt'
INTO TABLE POWER
CHARACTER SET utf8
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;

CHARACTER SET utf8:因为有中文数据,所以指定utf-8编码。

FIELDS TERMINATED BY ‘,’:csv文件以 ‘,’ 分隔数据。
.IGNORE 1 LINES:跳过原始文件中的第一行表头数据。如果不写,表头会被当作数据导入。如果要跳过从头开始的多行,可以改变LINES前面的数字。
可以在插入语句最后一列加上字段。 要导入数据的字段放在最后,将字段顺序和原始文件里的顺序保持一致。

常见问题

问题1:文件的绝对路径不能有中文,有中文运行结果显示
文件找不到。
File ‘C:\Users\Shineion\Desktop\数据.txt’ not found (Errcode: 2)

问题2:ERROR 1148 (42000): The used command is not allowed with this MySQL version
错误语句:mysql> LOAD DATA LOCAL INFILE ‘/var/lib/mysql/pet.txt’ INTO TABLE tbl_pet;
出错原因:多了一个LOCAL关键词。当文件在客户机端时要写LOCAL,在服务器端时不用写。我的txt文件是和MySQL数据库在同一虚拟机上的,所以不用加LOCAL。
问题3ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

出错原因:MySQL设置了secure-file-priv属性对应的路径,当数据文件从其他路径导入时便会报错。
解决办法:查看secure-file-priv指定路径并把数据文件放进去。

show variables like '%secure%';

问题4 ERROR 1292 (22007): Incorrect date value: ‘’ for column ‘death’ at row 1

出错原因:一开始直接把原始表格里的数据复制到txt文件里没有处理,空值的地方是空的,不符合MySQL里空值的表示方式,所以报错。

解决办法:将空值用\N代替。参考https://dev.mysql.com/doc/refman/8.0/en/loading-tables.html

问题5 使用 LOAD DATA INFILE ‘/var/lib/mysql-files/pet.txt’ INTO TABLE tbl_pet; 导入数据仍然失败

错误提示:’ for column ‘death’ at row 1 date value: 'N

出错原因:fields terminated by 默认值是’\t’,lines terminated by 默认值是’\n’,而Windows上的文件换行是’\r\n’,Mac OS X是’\r’。

解决办法:加上LINES TERMINATED BY ‘\r\n’,如下:

mysql> LOAD DATA INFILE ‘/var/lib/mysql-files/pet.txt’ INTO TABLE tbl_pet LINES TERMINATED BY ‘\r\n’;

本篇博客有借鉴https://blog.csdn.net/u013378642/article/details/81220809

电气工程的计算机萌新:余登武。写博文不容易。如果你觉得本文对你有用,请点个赞支持下,谢谢。

mysql导入表格,txt操作(以及常见问题解决方法)相关推荐

  1. sqoop导入数据常见问题解决方法

    sqoop导入数据常见问题解决方法 参考文章: (1)sqoop导入数据常见问题解决方法 (2)https://www.cnblogs.com/chaojibaidu/p/11071132.html ...

  2. 智学网登录不了java_智学网常见问题解决方法介绍

    智学网是一个给广大学生提供成绩查询的服务软件,在使用的过程中必然会遇到一些难题,另外在操作方面应该也会遇到一些解决不了的问题,但是也不用担心,下面小编就给你简单的介绍一些智学网使用常见问题解决方法. ...

  3. DKhadoop安装配置教程与常见问题解决方法

    上周分别就DKHadoop的安装准备工作以及服务器操作系统配置写了两篇分享的文章,这是个人第一次尝试写一个系统性的分享文章,必然会有很多疏漏的地方,还望见谅吧.今天分享的是DKHadoop安装以及常见 ...

  4. Web Deploy发布网站及常见问题解决方法(图文)

    Web Deploy发布网站及常见问题解决方法(图文) Windows2008R2+IIs7.5 +Web Deploy 3.5 Web Deploy 3.5下载安装 http://www.iis.n ...

  5. ZYNQ 常见问题解决方法

    ZYNQ 常见问题解决方法 0 BD文件更改后,需要做以下三步 1 SDK里面无法识别cos .sqrt等函数,如何解决 2 如何显示行数 3 如何批量注释 4 project explorer窗口被 ...

  6. 微博只显示来自android,新浪微博手机版五大常见问题解决方法

    新浪微博是目前主流的互动交流社交平台,目前使用手机版新浪微博的用户也日渐增加.今天当下小编从网上收集了一些关于在日常使用新浪微博所出现的小问题以及解决方法,希望对广大网民朋友有所帮助! 类别:聊天社交 ...

  7. Fortify SCA快速入门以及常见问题解决方法

    本篇将透过HP_Fortify_SCA_and_Apps_3.80从实用主义的角度入手,使读者能够快速的对该工具进行使用和对一些可能出现的常见问题进行处理,从而完成一个完整流程的源代码安全性静态扫描测 ...

  8. 金蝶kis专业版显示服务器无效,金蝶KIS专业版常见问题解决方法

    金蝶KIS专业版常见问题解决方法 金蝶KIS专业版常见问题有哪些你知道吗?你知道如何解决金蝶KIS专业版常见问题吗?下面是yjbys小编为大家带来的金蝶KIS专业版常见问题解决方法,欢迎阅读. 一.如 ...

  9. cad插件加载bplot成功用不了_Batchplot辅助插件常见问题解决方法

    Batchplot是一个需要配合AutoCAD进行使用的辅助插件,它的作用在于批量打印CAD图纸,帮助我们节省时间.根据用户反馈,本文针对使用Batchplot打印插件遇到的一些问题进行了整理,附带解 ...

  10. Word常见问题解决方法

    Word常见问题解决方法 1 在word里,如何让页码从指定页开始编号 2 在安装mathtype后,word自带的公式3.0不在了,如何解决? 3 Microsoft Visual C++设置失败 ...

最新文章

  1. canny边缘检测 关于2个阈值参数
  2. Win Ser 2008/2012 (R2) + NVIDIA Optimus 笔记本显卡
  3. element-ui上传下载excel(超详细der)
  4. Fiddler抓取数据并分析(完整的配置教程)
  5. c++11 call_once 使用方法
  6. nssl1176-轨道【数论,Dp】
  7. 安卓apk签名提取工具_Android测试工具入门介绍(二)
  8. vb.net利用SerialPort进行读取串口操作
  9. (80)FPGA建立时间与保持时间及时序模型-面试必问(四)(第16天)
  10. 程序员这样聊天,让女神疯狂追逐你
  11. MySQL之索引的创建和删除
  12. spring的@primary和@qualifier注解解决一个接口多个实现的注入问题
  13. fastreport调用frf文件直接打印_打印日志时 Logback 内部都做了些什么
  14. Android中设置EditText显示或隐藏密码
  15. emmx文件用什么软件打开电脑_fbx文件是什么_电脑fbx文件用什么软件打开
  16. 华为HCIP-DATACOM题库解析(821)61-79
  17. 计算机安装系统后鼠标无法使用,重装系统后鼠标不能用
  18. python裁剪图像
  19. 【故障诊断】基于 KPCA 进行降维、故障检测和故障诊断研究(Matlab代码实现)
  20. 因《C程序设计伴侣》的争执,谈谭浩强《C程序设计》的批评

热门文章

  1. 阿里云视频点播-视频上传失败(一直显示上传中)
  2. 牛客题霸 NC24 删除有序链表中重复的元素-II
  3. Vuex——使用namespace的store使用mapState获取state为undefined
  4. C#——《C#语言程序设计》实验报告——泛型与集合——“画树”程序
  5. Google Chrome —— 使用 PowerShell 命令安装 Google Chrome 浏览器
  6. 浙江理工大学2019年1月赛
  7. oracle数据库 名词,Oracle数据库名词解释
  8. 【过程记录 】windows和ubuntu两台电脑局域网进行socket通信收发数据和传输文件
  9. 使用mybatis中的自定义TypeHandler处理PostgreSQL中的Json类型
  10. 2013年、2012、2011年中国软件业收入百强名录 看中国软件业这三年的变化