C#、ODBC、Sql Server 和 xml 数据类型
本文关键字:xml 数据类型 Sql ODBC Server | 更新日期: 2023-09-27 18:37:00
我有一个通过输出参数返回XML数据的sql server存储过程(sql server 2005)。要连接到此数据库,首选选项是系统 DSN,因此我正在使用 ODBC 类 - ODBCConnection、ODBCCommand。问题是无论我使用什么数据类型,NChar,char,Text,NText,VarChar,NVarChar,当我调用ODBCCommand::ExecuteNonQuery时,我总是得到相同的错误:
"数据类型 0x63 是已弃用的大型对象或 LOB,但标记为输出参数。 不支持将已弃用的类型作为输出参数。 请改用当前的大型对象类型。
我调用存储过程如下:
OdbcCommand cmd = new OdbcCommand("{CALL FetchTasks(?)}", conn);
cmd.CommandType = CommandType.StoredProcedure;
OdbcParameter param1 = new OdbcParameter();
param1.ParameterName = "@TaskXML";
param1.OdbcType = OdbcType.Text; //I have tried nchar, char, text, ntext
param1.Size = 2048;
param1.Value = "<Root></Root>";
param1.Direction = ParameterDirection.Output;
cmd.Parameters.Add(param1);
cmd.ExecuteNonQuery();
无论如何我可以让它工作吗?
提前致谢-尼尔。
实际上您需要
检查返回 xml 数据的表列的数据类型是 xml 还是其他?这取决于此。