Python - mysql中导入CSV数据 【学习笔记】
2015-04-18 20:51
741 查看
<span style="font-size:18px;">导出 mysql> INSERT INTO test_main -> SELECT 1, 'A' UNION ALL -> SELECT 2, 'B' UNION ALL -> SELECT 3, 'C'; Query OK, 3 rows affected (0.01 sec) Records: 3 Duplicates: 0 Warnings: 0 mysql> mysql> select id, value -> INTO OUTFILE 'f:/test_main.txt' -> FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '''' -> LINES TERMINATED BY '\n' -> FROM test_main; Query OK, 3 rows affected (0.01 sec) 导入 数据文件比目标表多字段 mysql> LOAD DATA INFILE 'f:/test_main.txt' -> INTO TABLE test_main6 -> FIELDS TERMINATED BY ',' -> OPTIONALLY ENCLOSED BY '''' -> (@dummy, value); Query OK, 3 rows affected (0.00 sec) Records: 3 Deleted: 0 Skipped: 0 Warnings: 0 mysql> select * from test_main6; +-------+ | value | +-------+ | A | | B | | C | +-------+ 3 rows in set (0.00 sec) 这里的关键点, 在于那个 @dummy。 对你而言, 如果文件有 10列, 你只导 2 , 7 的话, 那就是 @dummy,列2,@dummy,@dummy,@dummy,@dummy,列7,@dummy,@dummy,@dummy</span>
第一部分, 是如何处理, 数据文件中, 列的数量, 大于 表的数量的情况。
假设数据文件如下: Book1.csv 编号,名称,说明 1,测试数据1,"测试CSV文件中,有逗号" 2,测试数据2,"测试CSV文件中有""双引号""" 3,测试数据3,"测试CSV文件中,有逗号和""双引号""" 4,测试数据4,普通数据 mysql> CREATE TABLE Test_Book1 ( -> id int, -> name VARCHAR(10), -> data VARCHAR(100) -> ); Query OK, 0 rows affected (0.05 sec) 下面的 lines terminated by '\r\n' 是 要求换行符号,为 windows的换行 下面的 ignore 1 lines是 忽略第一行的标题行。 mysql> LOAD DATA INFILE 'f:/Book1.csv' -> INTO TABLE Test_Book1 -> FIELDS TERMINATED BY ',' -> OPTIONALLY ENCLOSED BY '"' -> lines terminated by '\r\n' -> ignore 1 lines -> (id, name, data); Query OK, 4 rows affected (0.00 sec) Records: 4 Deleted: 0 Skipped: 0 Warnings: 0 mysql> select * from test_book1; +------+-----------+--------------------------------+ | id | name | data | +------+-----------+--------------------------------+ | 1 | 测试数据1 | 测试CSV文件中,有逗号 | | 2 | 测试数据2 | 测试CSV文件中有"双引号" | | 3 | 测试数据3 | 测试CSV文件中,有逗号和"双引号" | | 4 | 测试数据4 | 普通数据 | +------+-----------+--------------------------------+ 4 rows in set (0.00 sec) 对你而言, 你需要使用 ignore 1 lines 忽略第一行的标题行。
第二部分, 是说明, 如何 排除掉标题列的情况。
相关文章推荐
- [MySql学习笔记] 二 数据导入导出
- csv模块学习:Python学习笔记—CSV模块读写数据
- Kettle学习笔记一 :MySQL到Postgres导入数据且发送日志邮件
- 【python学习.用python将数据导入mysql测试】
- Python学习笔记--CSV模块读写数据(转)
- MySQL学习笔记十一:数据导入与导出
- python-MySQL学习笔记-第三章-利用Connector/Python来插入数据
- python-MySQL学习笔记-第四章-利用Connector/Python来查询数据
- 【学习笔记】mysql 快速批量导入测试数据
- solr学习笔记-导入mysql数据
- MySQL学习笔记十一:数据导入与导出
- Python实现 多进程导入CSV数据到 MySQL
- 数据库学习纪要(二十二):MySQL创建数据库、表,及导入CSV文件数据2
- python入门学习四(csv数据导出导入)
- (MYSQL学习笔记3)mysql两行数据合并成一行
- python之MySQL学习——数据查询
- python之MySQL学习——数据操作
- python cookbook第三版学习笔记七:python解析csv,json,xml文件
- python数据类型学习笔记
- 将csv导入到mysql数据表中