1

我有一个包含 8 位数字的文本文件,我想将其复制到我创建的 Sybase 表中:

创建表 foo ( id numeric(20) )

我正在使用数字,因此我可以加入现有表中的另一个数字列。

我的 bcp 命令的格式信息是: 10.0 1 1 SYBNUMERIC 1 12 "\n" 1 id 20 0

bcp 复制失败,并多次重复以下消息:

CSLIB 消息:- L0/O0/S0/N20/1/0:cs_convert:cslib 用户 api 层:公共库错误:转换/操作导致溢出。

我没有看到任何可能导致输入文本文件溢出的数字。

关于如何复制这些数据和/或为什么会失败的任何建议?谢谢!

4

2 回答 2

1

我将表格更改为 id 为 int。bcp 没有出错,但数据不正确。

因此,我将 id 表更改为 varchar 并且 bcp 工作正常。然后我将 id 改回 numeric(20) 并且它可以工作。

这并不能解决 bcp 问题,但确实给了我一个解决方案来获取我需要的数据,这是真正的目标。

于 2012-08-01T16:09:30.523 回答
0

尝试使用不带 -f 的 -c 参数。它不会提示格式,它会正常工作。问题通常是格式使用的默认值不正确。

于 2017-02-10T20:06:10.497 回答