[转]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 ...
随机推荐
- Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作
一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name = "Jonathan&q ...
- Android-Version Compatibility Issues (Gradle 2.14.1 requires Android Gradle plugin 2.1.3 (or newer)) but project is using
当AndroidStudio加载工程Project的时候,出现以上错误❌,千万不要点击,否则就是更多其他的错误: 解决方案: 1.认真翻译错误: 2.分析问题发生的原因,然后看到了 ..... ...
- Android-Java-synchronized静态方法&字节码文件对象
上一篇博客 Android-Java-同步方法-synchronized,中讲解了普通方法加入synchronized修饰符,此synchronized的同步锁是this,还介绍方法的封装性,这篇博客 ...
- Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2
1. 安装build-essentials 安装开发所需要的一些基本包 sudo apt-get install build-essential 2. 安装NVIDIA驱动 (3.4.0) 2.1 准 ...
- cnblogs第一篇文章
大家好,以后我就在这里很多交流分享了!谢谢!
- 饭否Oauth记录
饭否Oauth授权 首先去饭否申请一个应用,创建新应用即可,等待审核.审核通过了之后会拿到consumer_key和consumer_secret.这两个值先记录在代码里.后面经常用到. 然后第一 ...
- Flask系列05--Flask的配置config
一.flask配置 示例说明, 就是使用config进行配置 from flask import Flask app = Flask(__name__) # type:Flask app.conf ...
- isBalanced函数实现
原文:从一道面试题谈起,作者:360奇舞团 刘观宇 题目: 创建一个函数来判断给定的表达式中的大括号是否闭合,返回 true/false,对于空字符串,返回 true var expression = ...
- Java 基础笔记
1. 面向对象三大特性:封装,继承,多态,java面向对象的最终父类是:Object 2. getInstance() 单实例设计模式factory() 工厂模式build() 建造者模式 3. 静态 ...
- java操作数据库的基本方法
此次开发工具为eclipse,才有的数据库驱动是mysql-connector-java-5.1.8-bin.jar 第一步,在eclipse的工程目录中引用mysql驱动 驱动下载地址:https: ...