使用DTS导入Excel表中的数据

来源:互联网 发布:亚瑟士淘宝店铺推荐 编辑:程序博客网 时间:2024/06/05 05:35

    近日,工作关系涉及将Excel表中的数据导入SQL SERVER数据库中,先将自己在过程中的心得总结如下:

   1)使用SQL Server自带的导入导出功能非常不方便,校验很强,容易造成导入失败。建议使用DTS工具,没有那么强的校验,操作与自带的导入导出基本一样,很好用。 

      2)在导入之前尽量去掉各种约束条件,例如“不许为空”,“关联依赖”等,使源数据尽量“简单轻便”。如果是Excel,建议将数据的表头(一般为Excel中的第一行)用数据库表中的英文替代,这样在导入时做校验时好判断是否导入正确的字段列。

      3)一般如果要将源数据导入库中的多张关联表时,建议可以先将他们放入一张表,然后一次性导入,再在数据库中“折腾”。当然,视情况而定,如果一对多的话也只能多次导入了。

      4)在数据库中,将一张表的记录复制到另一张表,可使用语句

                          SELECT *

                          INTO 目标表名

                         FROM 源表名

         其中,‘*’可替换为源数据表中的指定列。这条语句相当于新建目标表,再插入数据。注意,使用这条语句时,数据库中目标表应该不存在。如果存在,需要先删除该表

        如果不想新建表,也即目标表已经存在,那么我们可以使用如下SQL

                         INSERT INTO 目标表名

                         SELECT 属性列

                         FROM 源表名

                         WHERE 判断条件

 注意:子查询的选择列表必须与INSERT语句列的列表匹配。如果没有指定列的列表,选择列表必须与正向其插入的表或视图的列匹配。

原创粉丝点击