5分钟
任务4 导入Excel数据到数据库
任务目的
导入Excel数据到数据库,任务包含:
1.生成批量测试数据,在Excel中生成批量测试数据;
2.在MySQL中创建对应表,对应Excel表中数据;
3.使用Navicat将数据导入数据库。
任务步骤
1.生成批量测试数据
- 新建Excel表,将第一行作为表头,输入如下数据:
id
、name
、age
、sex
,如下图所示。
- 然后选中A2单元格,在编辑栏中输入
=ROW()-1
,然后按下enter
键完成操作。
- 仍然选中A2单元格,使用
Ctrl
+C
复制此单元格,然后在左侧名称框中输入A2:A100000
然后按下enter
选中A2-A100000所有单元格,最后使用Ctrl
+V
粘贴A2单元格内容,完成id列数据的批量生成。
- 完成效果如下图所示。
- 同样的,在其它列也进行相同操作。(注意保证行数的一致,本实验Excel中最后行为第100000行,这意味着导入数据库后将出现99999条数据)
- 其中,B2单元格内容为
=CHAR((INT(16+RAND()*38+160)*256)+INT(94*RAND())+160)&CHAR((INT(16+RAND()*38+160)*256)+INT(94*RAND())+160)
; - C2单元格内容为
=RANDBETWEEN(1,100)
; - D2单元格内容为
=CHOOSE(RANDBETWEEN(1,2),"男","女")
。
- 其中,B2单元格内容为
- 所有数据完成后效果如下图所示,完成后保存即可。本实验中创建的Excel数据文件(
test.xlsx
)文件保存在桌面(C:\Users\Administrator\Desktop\test.xlsx
)。
2.在MySQL中创建对应表
- 完成批量数据的生成后,还需在MySQL数据库中有对应的表接受收这些数据。
- 回到Navicat软件中,双击【test】连接该数据库,点击【新建表】在此数据库中添加一张表。
- 添加Excel表中对应的表头字段。如下图所示,默认为仅有一条字段,点击【添加字段】即可添加多条字段,通过上移下移调整字段的前后顺序。添加完成后点击【保存】按钮,输入表名(本实验为“User”)后点击【确定】以完成表的创建操作。
- 注意事项:在
id
字段中点击【键】以将id
字段设置为主键(PRIMARY KEY),如下图所示。另外在添加name
以及sex
字段时,由于字段为varchar
类型,在添加该字段时需要将二者字符集均设置为utf8,否则会使得导入Excel数据时报错。
- 创建完成后,点击左侧test数据库下的【表】,然后双击【User】查看刚创建的User表。
3.使用Navicat将数据导入数据库
- 创建表完成后,点击【导入】打开导入数据窗口,在此选择【Excel】文件,然后点击【下一步】。
- 在此页面点击【...】选取导入的文件位置(选取
test.xlsx
,点击【打开】),然后勾选表【Sheet1】,点击【下一步】。
- 此页面中包含了一些附加选项,可以根据表格数据实际内容进行更改。由于本实验中表头已处于第一行,直接点击【下一步】进入下一个页面配置。
- 在此页面配置Excel表与MySQL中表的对应关系,然后点击【下一步】。(本实验中仅有一张
Sheet1
表,故无需进行额外配置,请根据Excel表格实际情况进行配置)
- 此页面中为Excel表与MySQL表中的字段映射关系,此处将进行自动映射,点击【下一步】进入下一配置项。
- 此页面中为导入数据到MySQL表中的方式,本实验中MySQL表中并无数据,选择默认模式【追加即可】,然后点击下一步。(其它导入模式可以参照本页面的详细说明,例如:复制的导入方式将先删除MySQL表中所有数据然后再从Excel中导入数据)
- 配置完成后点击【开始】,Navicat将会对数据进行导入操作,导入完成后点击【关闭】即可。
学员评价