更新sql_variant字段时记录集更新错误

时间:2010-02-08 22:22:56

标签: c++ sql-server oledb ado

我正在使用C ++和ADO将数据添加到SQL Server 2005数据库。当为sql_variant列调用Recordset Update方法时,我收到错误DB_E_ERRORSOCCURRED并且错误消息Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.如果我正在添加的值为NULL,则一切正常并且所有值都将转到字段不是sql_variant类型工作。

有谁知道我可能做错了什么?

由于

[编辑]我有更多信息。我们存储的值是空字符串--ADO似乎想要将它作为nchar(0)存储在sql_variant中,这当然不是有效的SQL数据类型。有没有办法使用ADO批处理命令在sql_variant中获取空字符串?

1 个答案:

答案 0 :(得分:0)

您只会在那里看到最外面的错误,因为错误建议您需要检查内部错误以找出问题。

道歉,我是一名VB开发人员,但是如果你遍历连接对象上的错误,你应该能够找出实际的错误。

从我的经典ADO日来看,多步错误通常指向尝试将某些东西填入您的列中,例如字符串太大或数字具有太高的精度。

希望这有帮助。