mysql怎么批量导入excel

2024-05-11 22:19

1. mysql怎么批量导入excel

  我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作。网上有一些关于直接将Excel导入MySQL的教程,不知道是我安装的office不对还是MySQL不对,极少数情况下可以成功导入数据,所以感觉这种直接导入的方法会受到office版本等因素的诸多限制,所以今天向大家介绍从txt批量导入数据到MySQL的方法,当然首先介绍的是Excel数据转成txt数据。这种方法虽然步骤较多,但是导入成功率极高,所以推荐给大家:
  可别说你把excel转成txt的方法是复制粘贴,那样的数据格式乱而且对于后续的导入有一定的出错率。正确的做法首先将excel文档另存成CSV(逗号分隔)文档,存储过程中会有一系列的警告提示,一路OK下来即可。

  
  用记事本的打开方式打开刚刚保存的.csv文件,我们发现,列与列之间用逗号(,)隔开:

  将其另存为.txt文件,并且编码要选择UTF-8:

  成功保存txt文件后就可以用PHPmyadmin导入该文件了。但这里一定要注意一点,该文件的名字一定不能出现中文,文件的存放路径也不能有中文出现。如果出现中文,导入过程中会提示你找不到文件路径。
  在SQL菜单中输入如下命令:
  Load Data InFile 'D:/1.txt' Into Table `res_type_collect` fields terminated by ',' lines terminated by '\n'
  其中'D:/1.txt'是你文件存放的绝对路径,注意是“/”而不是“\”;Table 后的值是你的表名;fields terminated by后的值是列与列间的分割标识(个人感觉“,”比较靠谱,不易出错。而tab可能在导入的时候出现问题);lines terminated by后面的值是行与行之间的分割标识,这个没的说,一般都是“\n”.

  点击“执行”后,上方提示成功插入X行数据,查看:

  注意上图,txt文件的第一行的第一个数据导入出现了错误,这应该是软件的问题吧,不过不影响,因为仅仅这一项错了,所以手动改过来就可以了。由此便完成了MySQL批量导入Excel、txt数据的任务啦。

mysql怎么批量导入excel

2. 如何将excel批量导入mysql

excel批量导入mysql,下面通过一个例子来介绍方法:
用mysql客户端可视化工具Navicat for MySQL,用其打开表

点击右上角文件->导入向导,或者直接点击表上面的导入向导

按照导入excel类型选择,按下一步

按图提示操作完,下一步


下一步

如图找到导入数据的对应列

下一步

再下一步,点击开始即可完成导入工作
刷新表,可看到刚才的导入数据

3. MySql如何批量添加数据或导入excel表中的内容。

  操作方法如下:
  1、首先需要在mysql管理工具上面新建一个表,也可以用mysql命令创建,表建立完成之后,需要将表中的字段名字告诉给填写excel表的人员。
  2、打开excel表,按照程序提供的字段填写相应的数据,需要跟程序提供的一样,其他的描述。.
  3、使用的mysql管理工具Navicatfor MySQL,打开工具,选择表所在的数据库,然后点击数据库名字,右键数据,出来下拉菜单选择import wizard ,有汉化版本的更明确.弹出一个选择界面,选择excel file文件。
  4、点击next(下一步),选择对应的excel文件就行,然后再下面选文件内容在哪一个sheet中,也就是内容写在excel什么地方,这点需要注意,也是关键的地方。
  5、点击next (此步骤也是关键步骤),需要注意2点: 1:filedname row 就是字段所在excel中的位置,也就是第几行(简单办法,一般就是英文对应的那一列).2:first data row(从哪一行开始执行),数据从哪一行开始。.
  6、点击next选择 targettable 目标对应的数据库,选择要导入到哪个数据库中表中。
  7、如果到上面一步没有问题的话,默认next到最后 就行了.然后打开表就能看到数据跟excel表中的一样。

MySql如何批量添加数据或导入excel表中的内容。

4. 如何增量导入MYSQL数据库中的数据

mysql数据库的导入,有两种方法:
1)
先导出数据库sql脚本,再导入;
2)
直接拷贝数据库目录和文件。
在不同操作系统或mysql版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。
所以一般推荐用sql脚本形式导入。下面分别介绍两种方法。
2.
方法一
sql脚本形式
操作步骤如下:
2.1.
导出sql脚本
在原数据库服务器上,可以用phpmyadmin工具,或者mysqldump命令行,导出sql脚本。
2.1.1
用phpmyadmin工具
导出选项中,选择导出“结构”和“数据”,不要添加“drop
database”和“drop
table”选项。
选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。
将导出的sql文件保存下来。
2.1.2
用mysqldump命令行
命令格式
mysqldump
-u用户名
-p
数据库名
>
数据库名.sql
范例:
mysqldump
-uroot
-p
abc
>
abc.sql
(导出数据库abc到abc.sql文件)
提示输入密码时,输入该数据库用户名的密码。
2.2.
创建空的数据库
通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。
2.3.
将sql脚本导入执行
同样是两种方法,一种用phpmyadmin(mysql数据库管理)工具,或者mysql命令行。
2.3.1
用phpmyadmin工具
从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。
在"sql"菜单中,浏览选择刚才导出的sql文件,点击“执行”以上载并执行。
注意:phpmyadmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件
比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。
gzip使用方法:
#
gzip
xxxxx.sql
得到
xxxxx.sql.gz文件。
提示输入密码时,输入该数据库用户名的密码。
3
直接拷贝
如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和操作系统之间可能不兼容,要慎用。
3.1
准备原始文件
用tar打包为一个文件
3.2
创建空数据库
3.3
解压
在临时目录中解压,如:
cd
/tmp
tar
zxf
mydb.tar.gz
3.4
拷贝
将解压后的数据库文件拷贝到相关目录
cd
mydb/
cp
*
/var/lib/mysql/mydb/
对于freebsd:
cp
*
/var/db/mysql/mydb/
3.5
权限设置
将拷贝过去的文件的属主改为mysql:mysql,权限改为660
chown
mysql:mysql
/var/lib/mysql/mydb/*
chmod
660
/var/lib/mysql/mydb/*
打字不易,如满意,望采纳。

5. SQLSERVER数据库中批量导入数据的几种方法

我们通过SQL脚本来插入数据,常见如下四种方式。
方式一:一条一条插入,性能最差,不建议使用。
INSERT INTO Product(Id,Name,Price) VALUES(newid(),'牛栏1段',160);INSERT INTO Product(Id,Name,Price) VALUES(newid(),'牛栏2段',260);......
方式二:insert bulk
语法如下:

BULK INSERT [ [ 'database_name'.][ 'owner' ].]{ 'table_name' FROM 'data_file' }WITH  ([ BATCHSIZE [ = batch_size ] ],[ CHECK_CONSTRAINTS ],[ CODEPAGE [ = 'ACP' | 'OEM' | 'RAW' | 'code_page' ] ],[ DATAFILETYPE [ = 'char' | 'native'| 'widechar' | 'widenative' ] ],[ FIELDTERMINATOR [ = 'field_terminator' ] ],[ FIRSTROW [ = first_row ] ],[ FIRE_TRIGGERS ],[ FORMATFILE = 'format_file_path' ],[ KEEPIDENTITY ],[ KEEPNULLS ],[ KILOBYTES_PER_BATCH [ = kilobytes_per_batch ] ],[ LASTROW [ = last_row ] ],[ MAXERRORS [ = max_errors ] ],[ ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ],[ ROWS_PER_BATCH [ = rows_per_batch ] ],[ ROWTERMINATOR [ = 'row_terminator' ] ],[ TABLOCK ],)  

相关参数说明:

BULK INSERT[ database_name . [ schema_name ] . | schema_name . ] [ table_name | view_name ]FROM 'data_file'[ WITH([ [ , ] BATCHSIZE = batch_size ]    --BATCHSIZE指令来设置在单个事务中可以插入到表中的记录的数量[ [ , ] CHECK_CONSTRAINTS ]     --指定在大容量导入操作期间,必须检查所有对目标表或视图的约束。若没有 CHECK_CONSTRAINTS 选项,则所有 CHECK 和 FOREIGN KEY 约束都将被忽略,并且在此操作之后表的约束将标记为不可信。[ [ , ] CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]  --指定该数据文件中数据的代码页[ [ , ] DATAFILETYPE ={ 'char' | 'native'| 'widechar' | 'widenative' } ]  --指定 BULK INSERT 使用指定的数据文件类型值执行导入操作。[ [ , ] FIELDTERMINATOR = 'field_terminator' ]  --标识分隔内容的符号[ [ , ] FIRSTROW = first_row ]    --指定要加载的第一行的行号。默认值是指定数据文件中的第一行[ [ , ] FIRE_TRIGGERS ]     --是否启动触发器[ [ , ] FORMATFILE = 'format_file_path' ][ [ , ] KEEPIDENTITY ]   --指定导入数据文件中的标识值用于标识列[ [ , ] KEEPNULLS ]    --指定在大容量导入操作期间空列应保留一个空值,而不插入用于列的任何默认值[ [ , ] KILOBYTES_PER_BATCH = kilobytes_per_batch ][ [ , ] LASTROW = last_row ]   --指定要加载的最后一行的行号[ [ , ] MAXERRORS = max_errors ]   --指定允许在数据中出现的最多语法错误数,超过该数量后将取消大容量导入操作。[ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ]  --指定数据文件中的数据如何排序[ [ , ] ROWS_PER_BATCH = rows_per_batch ][ [ , ] ROWTERMINATOR = 'row_terminator' ]   --标识分隔行的符号[ [ , ] TABLOCK ]     --指定为大容量导入操作持续时间获取一个表级锁[ [ , ] ERRORFILE = 'file_name' ]   --指定用于收集格式有误且不能转换为 OLE DB 行集的行的文件。)]   

方式三:INSERT INTO xx select...

INSERT INTO Product(Id,Name,Price) SELECT NEWID(),'牛栏1段',160UNION ALLSELECT NEWID(),'牛栏2段',180 UNION ALL...... 

方式四:拼接SQL
INSERT INTO Product(Id,Name,Price) VALUES(newid(),'牛栏1段',160),(newid(),'牛栏2段',260)......

SQLSERVER数据库中批量导入数据的几种方法

6. MYSQL怎么批量导入多个excel文件,字段都是对应的

 操作方法如下:
  1、首先需要在mysql管理工具上面新建一个表,也可以用mysql命令创建,表建立完成之后,需要将表中的字段名字告诉给填写excel表的人员。
  2、打开excel表,按照程序提供的字段填写相应的数据,需要跟程序提供的一样,其他的描述。.
  3、使用的mysql管理工具Navicatfor MySQL,打开工具,选择表所在的数据库,然后点击数据库名字,右键数据,出来下拉菜单选择import wizard ,有汉化版本的更明确.弹出一个选择界面,选择excel file文件。
  4、点击next(下一步),选择对应的excel文件就行,然后再下面选文件内容在哪一个sheet中,也就是内容写在excel什么地方,这点需要注意,也是关键的地方。
  5、点击next (此步骤也是关键步骤),需要注意2点: 1:filedname row 就是字段所在excel中的位置,也就是第几行(简单办法,一般就是英文对应的那一列).2:first data row(从哪一行开始执行),数据从哪一行开始。.
  6、点击next选择 targettable 目标对应的数据库,选择要导入到哪个数据库中表中。
  7、如果到上面一步没有问题的话,默认next到最后 就行了.然后打开表就能看到数据跟excel表中的一样。

7. MYSQL怎么批量导入多个excel文件,字段都是对应的

操作方法如下:
1、首先需要在mysql管理工具上面新建一个表,也可以用mysql命令创建,表建立完成之后,需要将表中的字段名字告诉给填写excel表的人员。
2、打开excel表,按照程序提供的字段填写相应的数据,需要跟程序提供的一样,其他的描述。.
3、使用的mysql管理工具Navicatfor MySQL,打开工具,选择表所在的数据库,然后点击数据库名字,右键数据,出来下拉菜单选择import wizard ,有汉化版本的更明确.弹出一个选择界面,选择excel file文件。
4、点击next(下一步),选择对应的excel文件就行,然后再下面选文件内容在哪一个sheet中,也就是内容写在excel什么地方,这点需要注意,也是关键的地方。
5、点击next (此步骤也是关键步骤),需要注意2点: 1:filedname row 就是字段所在excel中的位置,也就是第几行(简单办法,一般就是英文对应的那一列).2:first data row(从哪一行开始执行),数据从哪一行开始。.
6、点击next选择 targettable 目标对应的数据库,选择要导入到哪个数据库中表中。
7、如果到上面一步没有问题的话,默认next到最后 就行了.然后打开表就能看到数据跟excel表中的一样。

MYSQL怎么批量导入多个excel文件,字段都是对应的

8. MYSQL怎么批量导入多个excel文件,字段都是对应的

操作方法如下:
1、首先需要在mysql管理工具上面新建一个表,也可以用mysql命令创建,表建立完成之后,需要将表中的字段名字告诉给填写excel表的人员。
2、打开excel表,按照程序提供的字段填写相应的数据,需要跟程序提供的一样,其他的描述。.
3、使用的mysql管理工具Navicatfor MySQL,打开工具,选择表所在的数据库,然后点击数据库名字,右键数据,出来下拉菜单选择import wizard ,有汉化版本的更明确.弹出一个选择界面,选择excel file文件。
4、点击next(下一步),选择对应的excel文件就行,然后再下面选文件内容在哪一个sheet中,也就是内容写在excel什么地方,这点需要注意,也是关键的地方。
5、点击next (此步骤也是关键步骤),需要注意2点: 1:filedname row 就是字段所在excel中的位置,也就是第几行(简单办法,一般就是英文对应的那一列).2:first data row(从哪一行开始执行),数据从哪一行开始。.
6、点击next选择 targettable 目标对应的数据库,选择要导入到哪个数据库中表中。
7、如果到上面一步没有问题的话,默认next到最后 就行了.然后打开表就能看到数据跟excel表中的一样。