使用Excel批量生成SQL脚本(小技巧)

 

使用Excel批量生成SQL脚本(小技巧)

需求:

  我们需要把Excel中的一些资料更新到数据库表中,比如学生的考试系统,在数据中已经有了考生的ID,这里有一份考生ID和考生成绩的Excel表,我们如何把考生成绩更新到数据库表中呢?


方案:

  1. 我们最常使用的做法就是把这个Excel表导入到数据库中,在使用update语句来更新表。没错,这就是我通常使用的方法,但是有些人他们不安常理出牌,有时候客户说:我只会执行SQL,我不知道怎么把Excel导入到数据库中。
  2. 这个时候我们如何把要更新的内容生产SQL语句给到客户呢?如何是一两条记录,我们手动写SQL就可以了,但是如果有几百个学生,我们要手动写几百条语句吗?是否有批量生成SQL脚本的方法?这就是我们这里要讲到的:使用Excel批量生成SQL脚本(小技巧)


过程:

这是一个原始的Excel表,它包括了一些ID值和需要更新字段的值:

 

(图:1)

1:确定需要生成的SQL语句模型。

<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--> -- 根据需求写一条SQL模板
update  表  set   [ Longitude ]   =   ''  ,  [ Latitude ]   =   ''   where   [ ID ] =   ''   and   [ Name ]   =   ''


2:删除Excel表中多余的列,保留需要更新和查询条件的列。并按照需要生成的sql语句顺序进行排序。

前面两个列是需要更新的值,后面两个是where的条件字段

 

(图:2)

 

3:在Excel表插入空列,拷贝相关的语句进去。

拷贝第一语句放入合适的单元格,把把这一列一拖到底,生成同样的语句

 

(图:3)

 

4:把结果拷贝到查询分析器中,使用替换把多余的空格去掉。

 

(图:4)


-- 下面就是生成的语句
update   [ XX ]   set   [ Longitude ]   =   ' 113.41993 '  ,  [ Latitude ]   =   ' 23.42718 '   where   [ ID ] =   ' dd9a6197-a068-4eae-83cd-01f75e827234 '   and   [ Name ]   =   ' XXXX '
update   [ XX ]   set   [ Longitude ]   =   ' 113.41993 '  ,  [ Latitude ]   =   ' 23.42718 '   where   [ ID ] =   ' dd9a6197-a068-4eae-83cd-01f75e827234 '   and   [ Name ]   =   ' XXXX '
update   [ XX ]   set   [ Longitude ]   =   ' 113.41993 '  ,  [ Latitude ]   =   ' 23.42718 '   where   [ ID ] =   ' dd9a6197-a068-4eae-83cd-01f75e827234 '   and   [ Name ]   =   ' XXXX '
-- 。。。。。。


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值