[转]csv文件导入Mysql
本文转自:https://blog.csdn.net/quiet_girl/article/details/71436108
本篇博客主要讲将csv文件导入Mysql的方法(使用命令行)。
Step1:csv文件的准备
1、首先看一下我本次导入的数据,比较简单;
(1)在数据库中首先建立了一个名为“test”的数据库,在test数据库下建立了一个名为“student”的表格,表格属性如下:
| column name | datatype | Note |
| id | INT(11) | Primary Key, Not Null |
| name | VARCHAR(45) | |
| password | VARCHAR(45) |
(2)csv文件的存储内容如下,命名为test1.csv,存储位置:“F:/MySqlData/test1.csv”:
(如果是已知EXCEL文件,则将文件另存为.csv文件即可,千万不要直接改变文件的后缀名)
(3)这一步很重要:验证.csv编码格式是否正确,务必保证导入数据的编码格式是ANSI编码格式
使用Notepad++打开test1.csv,若编码格式不正确,改变编码格式,如下图:
Step2:数据的导入
第一种情况:导入部分不包含中文字体
打开Mysql命令窗口,输入密码
(1)查询已有数据库,使用命令
- show databases;
show databases;
执行结果如下图:
test便是之前建立的数据库。
(2)使用这个数据库,使用命令
- use test;
use test;
(3)查询我们之前建立的表格student是否在test数据库中,使用命令
- show tables;
show tables;
结果如下图:
(4)使用下面的命令将test1.csv导入mysql:
- load data infile 'F:/MySqlData/test1.csv' --CSV文件存放路径
- into table student--要将数据导入的表名
- fields terminated by ',' optionally enclosed by '"' escaped by '"'
- lines terminated by '\r\n';
load data infile 'F:/MySqlData/test1.csv' --CSV文件存放路径
into table student--要将数据导入的表名
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\r\n';
执行结果如下图,使用select * from student;查看已导入的数据:
第二种情况:导入数据包含中文字体
只需要将上述导入不包含中文的情况中的导入sql语句变成(加入编码格式)
- load data infile 'F:/MySqlData/test1.csv' --CSV文件存放路径
- into table student character set gb2312 --要将数据导入的表名
- fields terminated by ',' optionally enclosed by '"' escaped by '"'
- lines terminated by '\r\n';
load data infile 'F:/MySqlData/test1.csv' --CSV文件存放路径
into table student character set gb2312 --要将数据导入的表名
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\r\n';
结果如下图:
可能出现的问题及解决方案:
Error 1261(01000):Row XX doesn't contain data for all columns
Method:本错误信息提示第XX行数据不足,查看你数据库表中建立的字段和数据中提供的字段数目是否相同,只有二者数目一致,才可以导入。
Error 1366(HY000):Incorrect string value: '\x95F\xBE\xF4\xC6\xFB...' for column 'enterprise' at row XX
Method:本错误信息提示第XX行‘enterprise’字段出现不正确的字符,查找之后发现我在这个字段的数据含有2个比较复杂的汉字“旻爵”,可能无法识别,把这2个字去掉之后这个错误便消失了。
Error 1366(HY000):Incorrect integer value: ' ' for column 'money' at row XX
Method:本错误信息提示第XX行出现不正确的int值,可能原因是数据库“money”字段定义的数据类型是int型,而数据中存储的却不是int型(可能是double型、float型之类的)--这种情况一般是数据类型出现不一致的问题。
Error 1265(01000):Data truncated for column 'money' at row XX
Method:本错误信息提示第XX行数据被截断,可能原因是数据库中‘money’字段是double型或者float型,但是数据文件中可能存在null值,即这个数据值可能是不存在的,解决方案是将这个缺失的字段补‘0’。
[转]csv文件导入Mysql的更多相关文章
- 【MySQL】CSV 文件导入MySQL
此问题是前几天整理数据的时候碰到的,数据存在 CSV文件中(200多万记录),通过python 往数据库中导入太慢了,后来使用MySQL 中自带的命令 LOAD DATA INFILE, 30多秒就能 ...
- 使用pandas导入csv文件到MySQL
之前尝试过用命令行来解决csv文件导入到MySQL这个问题,没想到一直没有成功.之后会继续更新的吧,现在先用pandas来解决这个问题,虽然会复杂一点,但至少能用. 例子是导入movielens的ra ...
- MySql csv文件导入导出
一.导出到csv(本地导出) 通过mysql客户端shell连接到服务器,选择使用的数据库,输入sql代码: select * from test_info into outfile '/tmp/te ...
- csv文件导入到mysql
如何将csv文件导入到mysql数据库呢,方法有很多但最简单粗暴的方法还是用sql语句啦,像下面这样. LOAD DATA LOCAL INFILE 'csv文件路径' INTO TABLE 数据表名 ...
- CSV文件导入导出MySQL
使用SQLyog 工具导入文件数据到MySQL: Excel文件导入导出: 需要驱动:Microsoft Office 2007驱动 导入需要注意的问题:1.Excel里数值列,默认导入会变成浮点型. ...
- csv批量导入mysql命令
今天把从Kaggle上下载下来的csv数据导入mysql,想做个统计分析,怎奈csv文件有些大.所以仅仅能用mysql 命令导入,现mark下,以备以后不时之需: 1. 导入: 基本的语法: load ...
- SQL Server:把CSV文件导入到SQL Server表中
有时候我们可能会把CSV中的数据导入到某个数据库的表中,比如做报表分析的时候. 对于这个问题,我想一点也难不倒程序人员吧!但是要是SQL Server能够完成这个任务,岂不是更好! 对,SQL Ser ...
- 把CSV文件导入到SQL Server表中
保存数据库数据直接查询select * from tableName 在数据表格的左上角右击——将结果另存为选择路劲保存好的就是.csv格式的数据 有时候我们可能会把CSV中的数据导入到某个数据库的表 ...
- C# ASP.NET CSV文件导入数据库
原文:C# ASP.NET CSV文件导入数据库 using System; using System.Collections.Generic; using System.Text; using Sy ...
随机推荐
- 【转】jQuery.validate 用法
名称 返回类型 描述 validate(options) 返回:Validator ...
- SharePoint 列表中增加列编辑功能菜单
需求描述 在企业的部署中,经常将SharePoint和TFS集成在一起,两个系统之间相互读取数据,展现开发进度.在TFS 2018之前版本中,由于TFS的门户定制功能有限,用户比较喜欢使用ShareP ...
- C#生成指定长度随机数
public static string GetRandomString(int iLength) { ";// 随机字符中也可以为汉字(任何) StringBuilder sb = new ...
- VS动态修改App.config中遇到的坑(宿主进程问题)
昨天遇到了很奇怪的一个bug,具体描述如下: 这个系统是c/s架构的针对多个工厂做的资材管理系统,由于有很多个工厂,每个工厂都有自己的服务器.所以需要动态的改变连接字符串去链接不同的服务器. 由于这个 ...
- 迁移桌面程序到MS Store(2)——Desktop App Converter
迁移传统桌面程序到MS Store的另一种方式是使用Desktop App Converter工具.虽然本篇标题包含了Desktop App Converter(以下简称DAC),实际上我是来劝你别用 ...
- 企业项目开发--本地缓存guava cache(2)
此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. AdminCacheKey: package com.xxx.vo.userManagement; /** ...
- Regular Expression
It's a very elegant summary of regular expression from The AWK Programming Language. 1. The regular ...
- Android开发教程 - 使用Data Binding(四)在Fragment中的使用
本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...
- MariaDB MyCat实现读写分离(15)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...
- MariaDB 单表查询与聚合(5)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...