当前位置:文档之家› 怎样用excel生成数据库update语句

怎样用excel生成数据库update语句

2010-04-15 14:18 by 听风吹雨, 7150阅读, 16评论, ,
需求:
我们需要把Excel中的一些资料更新到数据库表中,比如学生的考试系统,在数据中已经有了考生的ID,这里有一份考生ID和考生成绩的Excel表,我们如何把考生成绩更新到数据库表中呢?
方案:
1.我们最常使用的做法就是把这个Excel表导入到数据库中,在使用update语句来
更新表。

没错,这就是我通常使用的方法,但是有些人他们不安常理出牌,有时
候客户说:我只会执行SQL,我不知道怎么把Excel导入到数据库中。

2.这个时候我们如何把要更新的内容生产SQL语句给到客户呢?如何是一两条记录,
我们手动写SQL就可以了,但是如果有几百个学生,我们要手动写几百条语句吗?
是否有批量生成SQL脚本的方法?这就是我们这里要讲到的:使用Excel批量生
成SQL脚本(小技巧)
过程:
这是一个原始的Excel表,它包括了一些ID值和需要更新字段的值:
(图:1)
1:确定需要生成的SQL语句模型。

--根据需求写一条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]='dd9a619 7-a068-4eae-83cd-01f75e827234'and[Name]='XXXX'
update[XX]set[Longitude]='113.41993', [Latitude]='23.42718'where[ID]='dd9a619 7-a068-4eae-83cd-01f75e827234'and[Name]='XXXX'
update[XX]set[Longitude]='113.41993', [Latitude]='23.42718'where[ID]='dd9a619 7-a068-4eae-83cd-01f75e827234'and[Name]='XXXX'
--。

相关主题