`

MySql导入CSV文件或制表符分割的文件

    博客分类:
  • DB
阅读更多

有时候我们会有这样的需求,需要把一些数据从别的库导入到另外的一个库中,而这些数据是用CSV文件存放的。对于MySql数据库我们有两种方式:一种是用命令来导入,另一种是很多的MySql客户端(如Heidisql、Sequel pro)为我们提供了这样的功能。下面我们来分别介绍着两种导入方式。

MySql命令导入

准备工作:

先建一个表:

建表语句如下:
CREATE TABLE `city_china` (
	`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
	`ename` VARCHAR(12) NULL DEFAULT NULL COMMENT '省的简称',
	`ecityname` VARCHAR(12) NULL DEFAULT NULL COMMENT '市的名称',
	`ccityname` VARCHAR(12) NULL DEFAULT NULL COMMENT '市的中文',
	PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=81
;

准备要导入的CSV文件:

首先我们新建一个excel文件,内容如下:
然后我们把excel文件转换为csv文件。操作为:文件---->另存为:
注意:字段默认是用逗号来进行分割的。文档中主键可以空着不填,另外顺序要和数据库中字段的顺序保持一致。另外我们注意到:我们的数据库的编码格式是UTF-8,我们的CSV文件中是含有中文的,如果我们直接导入的话,中文可能会导入不到数据库了。我们需要把CSV文件的编码格式变为UTF-8.转换CSV格式我们有一种简单的方式,CSV文件是可以用记事本来编辑的。用记事本打开编辑,然后另存为的时候选择一些编码格式就OK了。

导入命令

LOAD DATA INFILE 'D:\\Document\\Download\\test0142.csv' INTO TABLE city_china FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS ;
LOAD DATA INFILE 后面跟的是要导入的文件路径,INTO TABLE 表名 FIELDS TERMINATED BY 分割字段方式(这里默认是逗号,可以更改为其他的分割方式)ENCLOSED BY 分号分割,默认就行 LINES TERMINATED BY 换行 IGNORE 1 ROWS 忽略第一行(本例中第一行为数据库中对应的字段,如果你的文件中第一行就是数据的话,就不要忽略第一行了)。

MySql客户端

这里我用的是HeiDiSql客户端为例。连接上数据库之后,在左上边的菜单上(两个小人的左边)有这样一个按钮,如图:
点击,会弹出如下页面:
点击导入就OK。
 

 

 
 

 



 

分享到:
评论

相关推荐

    matlab导入数据和字符

    对于TXT文件,可以指定分隔符,如逗号、空格或制表符: ```matlab data = readtable('data.txt', 'Delimiter', '\t'); % 用制表符分隔 ``` ### 2. Excel文件的导入 Excel文件通常包含多个工作表,MATLAB的`...

    May 12 使用PHP导入Excel和导出数据为Excel文件

    Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现...另外将mysql数据导出为Excel与本站上篇文章中导出CSV一样,只是将逗号分割符换成制表符,并修改header信息就可以了。

    R 数据导入和导出.pdf

    该函数具有多种变体,如`read.csv`和`read.delim`,分别用于逗号分隔和制表符分隔的数据文件。 - **固定长度格式文件**: 对于固定宽度的文本文件,可以通过指定每一列的宽度来解析数据。 - **`scan`函数**: 用于简单...

    易语言-分文本文件导入易语言数据库

    对于分隔文本文件(如CSV),通常需要解析每一行数据,根据分隔符(如逗号、制表符)拆分出各个字段值。 4. 数据库表操作:创建数据库表结构,需要使用SQL语句,如`CREATE TABLE`,定义表名、字段名以及字段类型。...

    74将数据库输出到一个文本文件中.rar_将数据库输

    此外,导出的文本文件格式可以根据需求进行调整,例如CSV(逗号分隔值)适合导入电子表格软件,TSV(制表符分隔值)则更便于编程语言处理。还可以通过设置字段和行分隔符、字符编码等参数,确保数据导出后与预期一致...

    MySQL Import-开源

    字段定界符通常用于区分表格中的不同列,比如逗号或制表符;行定界符则用来分割不同的记录行,通常是换行符。MySQL Import允许用户自定义这些设置,以适应各种复杂的数据格式。 在导入过程中,MySQL Import还具备...

    易语言格式文本转数据库

    格式文本通常指的是遵循一定规则排列的数据,例如CSV(逗号分隔值)文件或TSV(制表符分隔值)文件,这些文件在没有专门的数据库系统支持时,可以被用作简单的数据存储方式。然而,对于大量数据的处理和复杂的查询...

    103976个英语单词库txt版本

    首先导入Pandas库,然后使用`read_csv()`(尽管文件是txt,但可以处理制表符分隔的文件)将数据加载到DataFrame中: ```python import pandas as pd data = pd.read_csv('103976个英语单词库_1619053215.txt', sep=...

Global site tag (gtag.js) - Google Analytics