免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3550 | 回复: 5
打印 上一主题 下一主题

sybase BCP大量数据时失败 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-03-06 14:33 |只看该作者 |倒序浏览
BCP 2700W数据, BCP到1200W的时候突然报错:
blk_rowxfer(): blk layer: internal BLK-Library error: No value or default value available and NULL not allowed.  col = 39
CTLIB Message:  - L1/O2/S1/N24/1/0:
blk_rowxfer(): blk layer: internal BLK-Library error: No value or default value available and NULL not allowed.  col = 39
CTLIB Message:  - L1/O2/S1/N24/1/0:
blk_rowxfer(): blk layer: internal BLK-Library error: No value or default value available and NULL not allowed.  col = 39
CTLIB Message:  - L5/O3/S5/N7/5/0:
ct_sendpassthru(): network packet layer: internal net library error: Net-Library operation terminated due to disconnect
CTLIB Message:  - L5/O3/S5/N5/5/0:
ct_cancel(): network packet layer: internal net library error: Net-Library operation terminated due to disconnect

提示说No value or default value available and NULL not allowed.  col = 39 CTLIB Message:  - L1/O2/S1/N24/1/0:
核查数据之后,未有问题,发现个奇特的现象,
把数据分为2个,1200W(A)+1200W(B)
导入A之后,再导B就会报
CTLIB Message:  - L5/O3/S5/N7/5/0:
ct_sendpassthru(): network packet layer: internal net library error: Net-Library operation terminated due to disconnect
CTLIB Message:  - L5/O3/S5/N5/5/0:
ct_cancel(): network packet layer: internal net library error: Net-Library operation terminated due to disconnect
但是如果把表清掉,再导B 又正常了。好像1200W条是个极限。

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
2 [报告]
发表于 2012-03-06 16:41 |只看该作者
说明1200W那里有格式错误——一般都是不可见的什么非法字符之类的,导致该行是个格式问题。
1200W不是极限,如果格式正确,几个亿都可以导。

论坛徽章:
0
3 [报告]
发表于 2012-03-06 17:14 |只看该作者
回复 2# Eisen


我觉得应该不会是数据问题,因为我把目标表清空之后,再接着后面的1200W条导,是成功的。到了1200W条左右又报错。


   

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
4 [报告]
发表于 2012-03-07 09:32 |只看该作者
那你的data cache有多大?page size有多大?
1200w导入时,那个表有多大?

论坛徽章:
0
5 [报告]
发表于 2012-03-07 16:19 |只看该作者
回复 4# Eisen

我在工具上 看了下表的大小。
发现目标表确实是不够空间。。。
剩余空间不到百分之 4%   。。。  但是数据库是有空间的,不知道能不能扩充表的空间。


   

论坛徽章:
0
6 [报告]
发表于 2012-03-07 22:21 |只看该作者
错误消息的字面意思应该是,bcp插入数据的到1200w的时候,并没有提供 col = 39 这个列的值,同时这个列没有定义default,也不允许null,所以就出错了。

要不你给这个列定义一个default值,或者允许他为null试试看?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP