存储过程中的经典ADO和表值参数

MJL*_*vre 12 sql-server vb6 stored-procedures ado

有没有办法通过经典的ADO将表值参数传递给SQL Server中的存储过程?

Rem*_*anu 6

经典ADO是COM和OLE,SQL Native Client支持OleDB上的表值参数,请参阅表值参数(OLE DB).人们不得不把它弄脏并直接编写到OleDB接口(在C/C++中).

此外,TVP仅在SQL 2008中,因此您将无法在SQL 2005中使用它们.

顺便说一下,这里的completness是表值参数(ODBC)引用,对于那些ODBC怀旧...


Dan*_*ell 5

我认为他们在2008年是新的?

无论如何,我认为答案是否定的,我怀疑有一个DataTypeEnum值,你可以根据自己的需要进行调整.

因此,如果我可以提出替代方案,我想你想要做的是将某种结构化数据传递给存储过程.我之前在使用XML的ADO中完成了这个:

  • 将存储过程中的参数定义为类型xml
  • 在ADO中将参数定义为类型为adLongVarChar,长度为= len(xml)+ 1

我知道这不是你想要的,但它是一种有效的方法