您的位置:首页 > 数据库 > MySQL

【mysql数据导入】数据导入时的几种方法

2018-02-08 15:09 190 查看

背景

公司目前的开发任务已经结束,与客户对接之后,老系统上的一些数据要导入到新系统中,但是因为老系统中的字段与新系统中不一致,且导出的数据为excel的形式,所以学习了一下导入数据的操作。记录下来,希望能提高大家导入数据时的效率。

方法

一、通过mysql导入excel的方法直接导入数据

首先,将excel的列名与数据库中的列名对应,举个栗子:

excel数据如下:

姓名分数
Harry Potter90
Hermione Granger100
Draco Malfoy90
数据库表的数据格式如下:

NAME_SCORE_
则最终应将excel表更改为如下:

NAME_ | SCORE_

1. | -:

Harry Potter | 90

Hermione Granger | 100

Draco Malfoy | 90

然后,打开数据库找到自己要导入数据的表,点击导入按钮



接着按照指示,选择excel数据格式(博主用的2010)



按照提示选择自己要导入的excel文件以及要导入数据所在的sheet页,点击下一步



因为数据库中数据表已经建立,无需新建表,中间过程不赘述,直至第六步,如果数据一一对应,点击下一步!



确定是否覆盖数据库中内容,因为导入的数据即为最终的数据,所以选择的是复制,点击下一步!



点击开始,如果数据导入成功,会出现successful的提示,一定是出现这个提示才导入成功,注意仔细看!

二、通过excel批量生成sql语句导入数据

场景

数据库表里已经有数据了需要批量的做一些更新。

需要设置不同条件的操作。

操作

有excel表如下:

姓名性别年龄
李明10
孙楠20
刘伟30

excel表格中有三列数据,希望导入到数据库users表中,对应的字段分别是name,sex,age 。

在你的excel表格中增加一列,利用excel的公式自动生成sql语句,方法如下:

1、增加一列(D列)

2、在第一行的D列,就是D1中输入公式: =CONCATENATE(“insert into users (name,sex,age) values (‘”,A1,”’,’”,B1,”’,’”,C1,”’);”)

3、此时D1已经生成了如下的sql语句: “insert into users (name,sex,age) values (‘李明’,’男’,’10’)”;

4、将D1的公式复制到所有行的D列

5、此时D列已经生成了所有的sql语句

6、把D列复制到一个mysql查询中执行即可。

参考链接

辅助功能(excel功能函数之vlookup)

因为有些数据需要根据现有数据规则进行替换,所以使用了excel的vlookup函数,效果如下:



解释说明:选中D列第一行,点击公式中的VLOOKUP函数。

第一个参数为需要被替换的字段,本例中为C列第一行1001301。

第二个参数为查找范围,本例中为G列至H列,要保证所要替换的数据在查找范围内。

第三个参数为所要替换的字段被替换字段在所查找范围中的列数,本例中选中G至H两列,且最终要代替的数据出现在H列,所以填2,即第二列。

第三个参数为0,0为精确查找,建议选0,非精确查找不知道会出来什么幺蛾子。。。。

于陕西易唐云网智能科技有限公司记录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: