信息系统excel数据初始化到sql server数据库小结

本文总结了将Excel数据导入SQL Server数据库的三种方法:1) 编写导入程序,适合小数据量;2) 使用企业管理器的OpenDataSource,适合大数据量但可能丢失部分数据;3) 先导入Access再转至SQL Server,适用于数据不规范的大数据量导入。在导入过程中需注意数据格式转换和潜在的数据丢失问题。

    信息系统在投入运行时,客户往往要求把已有的历史数据导入到系统中,而客户的历史数据通常都是excel格式的,把excel数据导入sql server 数据库通常有以下三种方法:

   1.做一个导入程序

   这种方法适合小数据量,且数据格式规范的情况,比如一些基本配置,基础设置信息。可以直接由用户完成,下面的两种方法则需要开发这完成。由于这样只能一行一行数据插入,效率比较低,大数据量的情况下插入数据库的时间会比较长。 

   2.直接在企业管理器用openDataSource方式把excel信息导入到数据库新建的表中,然后进行格式处理,符合要求后再插入到目标表中

   适合大数据量,数据内容规范情况。如果数据内容有不符合数据类型的情况(主要是日期时间和数字)会直接被置为Null,所以可能会丢失一些数据。

   导入的sql语句:

           SELECT*into TableNameFROMOpenDataSource( 'Microsoft.Jet.OLEDB.4.0',  'Data Source="D:/data.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]

    打开OpenDataSource的语句:         

         exec sp_configure 'show advanced options' ,1

         reconfigure

         exec sp_configure 'Ad Hoc Distributed Queries' ,1

         Reconfigure

    关闭OpenDataSource的语句:

          execsp_configure'Ad Hoc Distributed Queries',0

         reconfigure

      有关OpenDataSource不能访问问题参考这里,注意37楼:management studio--->服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项:全都不选

   3.首先把excel数据导入access数据库,然后使用sqlServer的导入功能,把access中的表导入sqlserver新建表,最后进行格式处理,插入到目标表

     这里要注意在原始excel数据第一行数据和标题之间新加入一行,每一列都输入字母 a ,这样插入到acess后所有的数据类型都是字符型,数据不会丢失

     适合大数据量,数据内容不太规范,不能直接导入的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值