首页 新闻 赞助 找找看

ASP.net 把excel中数据导入到SQL 中 excel表结构和 SQL server不同

0
悬赏园豆:5 [已解决问题] 解决于 2009-08-14 08:58

我想把excel 中的数据导入到SQLserver中 但是excel和SQL server 中的数据表结构不一样,并且excel中的值有些还要替换成其他的。excel中的字段要比SQL中的字段要多些。这个怎么实现。我用循环插入 但没有插入完就出现数据库连接超时。

ASP.NET爱好的主页 ASP.NET爱好 | 初学一级 | 园豆:180
提问于:2009-08-09 13:06
< >
分享
最佳答案
0

还有一种方法:就是先把excel中的数据导入到一个临时表中,然后,在使用存储,对临时表的数据进行处理。

这样也不需要一条一条的循环插入了。

收获园豆:2
大青岛 | 初学一级 |园豆:142 | 2009-08-09 22:43
其他回答(2)
0

1)方法1
增加connection timeout时间
增加commond timeout时间

2) 方法2
利用DTS,然后map相对的field,然后执行DTS

Vincent Yang | 园豆:573 (小虾三级) | 2009-08-09 18:54
0

我也用循环语句做的插入,但没有出现过超时,甚至有的表插入的时间总共花费10多分钟也没有事,Connection和Command没有设置超时,它默认的应该是30秒,你出现超时看来不是时间上的问题,还是在代码上好好找找,比如不要在循环外为整个插入操作做一个事务,数据一次性全部读出然后关闭对Excel的连接,仅为每一行插入操作做一个事务,等等. 还可以做一做对插入的检测,如果已经插入过了就不再插入,这样就算一次失败也可以再次导入,一次不行两次,两次不行三次,所有数据都能导入进去

收获园豆:3
zhykhld | 园豆:313 (菜鸟二级) | 2009-08-09 22:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册