SqlBulkCopy 无效列长度...但事实并非如此

问题描述 投票:0回答:1

我的

SqlBulkCopy
命令抛出异常说

从 bcp 客户端收到 colid 24 的无效列长度。

如果我查看 Sql Server Mgmt Studio 中所示的第 24 列(从 0 开始),它就是 SpaceID 列。如果我通过数据表执行此操作,则它是标题列。两者在数据库中都被定义为

varchar(255)
。不过,我的专栏都不太大。在将值添加到 DataTable 的循环中,我检查了每个值的长度并报告了任何大于 254 个字符的情况,但没有。

还有什么可能导致此问题?

sql-server sqlbulkcopy
1个回答
0
投票

就我而言,问题是布尔类型,Azure 读取我的 .dsv 文件,并了解我的列中的“f”或 0 代表 false,因此 INT 或任何字符串类型对于该列来说不是实际的。我将接收器列的数据类型更改为 BIT,它对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.