Administrator
发布于 2021-08-27 / 30 阅读 / 0 评论 / 0 点赞

大量Excel数据写入数据库的小技巧

本文内容均为原创,严禁不带原文链接形式的抄袭!

当你的Excel表有着大量的数据时,第一时间所想的是不是利用脚本来对Excel数据批量提取并写入数据库?就比如下面的这个Excel表格式

city_namecity_code
北京101010100
上海101020100
天津101030100
重庆101040100
......

全国的城市数目一共有3000多座,如果是通过手写的方法来对数据进行添加肯定是不可能的事情(如果你愿意当我没说),那么通过一个脚本来完成貌似是一个最佳的选择,其一是其可以代替繁琐的人工步骤,其二是其工作相对于人工更精准,出错率低。
但是我们真的需要脚本来帮助我们对数据库进行操作吗?
脚本语言虽然学习简单,但并不是每个人都对其掌握较深,甚至也存在不少完全不了解脚本语言的开发者。如果在不够了解的情况下,编写脚本反而还增加了时间成本。那么我们有没有其他的方便快捷的方法来帮我们完成这一操作呢?答案是肯定的。

那么如何去做呢?

数据库的插入操作无非是SQL语句的执行,而只要我们能快速生成每个条目的SQL语句,那么就能实现批量插入的目的。Excel作为一款强大的数据编辑工具,而有一项功能一直都用得比较少。那就是Excel的插入函数功能。它不仅仅在帮你计算报表时有大用处,同时也能帮你完成SQL语句的批量生成。那么具体步骤时是如何操作呢?

具体步骤

第一步 打开Excel表格,图片.png并在你的数据字段后的首行新建一个长单元格。我们的SQL语句就将放在这里。

第二步 在新建单元格的位置写入插入的代码,其具体格式如下

="insert into DatabaseName(city_name,city_code) values('"&B1&"','"&A1&"');"

开头的 = 符号表明了这是一行插入函数
其中

insert into DatabaseName (city_name,city_code)

选择了插入的语句和插入的数据库

values('"&B1&"','"&A1&"')

则代表着选取的字段位置B1,A1,此位置和上面的city_name,city_code的顺序对应
比如你的字段有五个分别名为X1,X2,X3,X4,X5,他们的位置为A1,B1,C1,D1,E1
,你想把他们插入mydata数据库,那么对应的语句为

=insert into mydata(X1,X2,X3,X4,X5) values('"&A1&"','"&B1&"','"&C1&"','"&D1&"','"&E1&"');

当你在首行写入语句后,可以拖住该单元格的右下角的填充柄向下拖个几行看看生成的效果图片.png
可以看到规整的SQL语句已经生成了。
而其他类似的SQL语句均可以通过这种形式完成批量操作!

小技巧

如果你遇到了这种批量导入的情况,那么一般来说针对的Excel的数据量肯定不小,如果你拿着填充柄一行行往下拖十分的浪费时间。那么Excel当然也是有相应的快捷操作的,当你鼠标快速双击首行的插入函数单元格的填充柄时,Excel会自动的帮你填充好所有的数据!
另外,在自动填充数据后,Excel的光标也会全选刚刚的所有生成的Sql语句的单元格,此时你只需要复制到查询中执行即可,但是如果你点了一下其他位置导致全选没了该怎么办呢?当然,Excel也想到了这点,你只需要单击首个单元格位置先选中这个单元格,再按下Ctrl+Shift+ ↓ 即可全选位于此单元格和其下的所有单元格。


评论