高手帮忙解决一下海量数据导入的问题

hzg_1998 2007-11-17 10:13:37
现有3000000条记录要从文本文件中导入到SQL Server2000中
文本文件格式为:
2006-03-07 12:00:01 Create 8123412000000010 0x000000000001
2006-03-07 12:00:01 Create 8123412000000028 0x000000000002
中间用制表符分割
表结构如下:
Create_Date datetime,
Status bit,1-Create;0-Delete
Card_No char(16),
Card_ID int
用事务一条条的插入时会出现错误
各位有没有比较好的方法?
...全文
153 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzg_1998 2007-11-19
  • 打赏
  • 举报
回复
谢谢大家,用.net 2.0的SqlBulkCopy搞定
zjcxc 2007-11-19
  • 打赏
  • 举报
回复
先改表结构, 改成可以直接把数据 BCP /BULK 进去

然后再UPDATE数据和改列类型


如果用DTS的话, DTS是可以对导入的列设置数据转移, 可以直接满足要求, 主要看楼主会不会用 DTS
ruihuahan 2007-11-19
  • 打赏
  • 举报
回复
有些字段值要转换,用DTS不太好吧
===========================
如果不需要转化,bcp/bulk insert就可以了。
就是因为需要转换,DTS才是是最佳选择,因为DTS包中可以插入数据转换脚本。
中国风 2007-11-17
  • 打赏
  • 举报
回复
在导入时—有列的映射和转换—可设置
中国风 2007-11-17
  • 打赏
  • 举报
回复
有些字段值要转换,用DTS不太好吧?
在导入时可以转换,楼主细心点就可以看到了
-狙击手- 2007-11-17
  • 打赏
  • 举报
回复
先看看出什么错
中国风 2007-11-17
  • 打赏
  • 举报
回复
在企业管理里用dtc导入/2005ssis导入,这样导入不会触发事件
-----------------
也可用bcp/BULK INSERT
hzg_1998 2007-11-17
  • 打赏
  • 举报
回复
实际的表结构比较复杂,有些字段值要转换,用DTS不太好吧
dobear_0922 2007-11-17
  • 打赏
  • 举报
回复
DTS
internetroot 2007-11-17
  • 打赏
  • 举报
回复
没用DTS试验吗?
tre_sdlpq 2007-11-17
  • 打赏
  • 举报
回复
如果字段都符合要求,建议用bcp比较好
我给你一个例子:
你参照:
EXEC master..xp_cmdshell ' bcp TrialPO.dbo.T_D振替伝票 in d:\data\振替伝票.txt -S172.17.254.11 -Utcuser -Ptcuser -c -q '

这个是导入的
有不明白的再问我就可以了阿

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧