Chinaunix首页 | 论坛 | 博客
  • 博客访问: 595024
  • 博文数量: 248
  • 博客积分: 52
  • 博客等级: 民兵
  • 技术积分: 1028
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-23 12:05
文章分类

全部博文(248)

文章存档

2016年(7)

2013年(241)

分类: SQLServer

2013-04-08 19:52:11

服务器: 消息 4832,级别 16,状态 1,行 1
大容量插入: 在数据文件中遇到意外的文件结尾 (EOF)。
服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'STREAM' 报错。提供程序未给出有关错误的任何信息。
OLE DB 错误跟踪[OLE/DB Provider 'STREAM' IRowset::GetNextRows returned 0x80004005:  提供程序未给出有关错误的任何信息。]。
语句已终止。

解决方式:
由于原来服务器故障,是从原来的备份中复制过去的,可能没有注意文本的分割符变掉了,将txt-sql-ec.sql中的"FIELDTERMINATOR = ' ',"单引号中的空格改为TAB后,导入正常。

txtsql.bat

点击(此处)折叠或打开

  1. set r=%time%
  2. set d=%date%
  3. echo %d% %r% txt-sql开始导入 >>c:\txtsql\EC-import.txt
  4. rar a -agYYYYMMDDHHMM -df -o+ d:\input_bak\Oracle-EC- c:\input\*.txt
  5. winrar e -o+ c:\input\oracle_files.zip c:\input
  6. osql -S (local) -U sa -P local -d EC -i c:\txtsql\txt-sql-ec.sql >>c:\txtsql\EC-import.txt
  7. rem pause
  8. set r=%time%
  9. echo %r% txtsql导入完成 >>c:\txtsql\EC-import.txt

txt-sql-ec.sql

点击(此处)折叠或打开

  1. use [EC]

  2. BULK INSERT mid_item
  3. FROM 'C:\input\mid_cus.txt'
  4. WITH (
  5.     FIELDTERMINATOR = ' ',
  6.     ROWTERMINATOR = '\n'
  7. )
  8. BULK INSERT mid_bom
  9. FROM 'C:\input\mid_bom.txt'
  10. WITH (
  11.     FIELDTERMINATOR = ' ',
  12.     ROWTERMINATOR = '\n'
  13. )
  14. BULK INSERT mid_cus
  15. FROM 'C:\input\mid_cus.txt'
  16. WITH (
  17.     FIELDTERMINATOR = ' ',
  18.     ROWTERMINATOR = '\n'
  19. )

  20. BULK INSERT mid_vdr
  21. FROM 'C:\input\mid_cus.txt'
  22. WITH (
  23.     FIELDTERMINATOR = ' ',
  24.     ROWTERMINATOR = '\n'
  25. )
  26. BULK INSERT mid_
  27. FROM 'C:\input\mid_cus.txt'
  28. WITH (
  29.     FIELDTERMINATOR = ' ',
  30.     ROWTERMINATOR = '\n'
  31. )

  32. delete from mid_itm where dty < (getdate()-7)

阅读(862) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~