0
我在MSSQL中创建了一个返回VARCHAR(MAX)的标量值函数。标量值函数在C++ ADO(不是.NET)中返回VARCHAR(MAX)
我使用充满了该函数的参数CommandPtr(PRECOM),和我打电话通过以下调用该函数:
_variant_t vNull;
vNull.vt = VT_ERROR;
vNull.scode = DISP_E_PARAMNOTFOUND;
HRESULT hr = ptrCom->raw_Execute(&vNull, &vNull, adCmdStoredProc, &record_set);
返回HRESULT是DB_E_ERRORSINCOMMAND。
如果我将返回的值从VARCHAR(MAX)更改为VARCHAR(8000),一切正常。
有没有人有任何想法如何执行返回VARCHAR(MAX)的标量值函数?
谢谢!
嘿,感谢您的帮助:-) 当我试图设置文本为返回的数据类型,我从SQL收到此错误: “文本数据类型是返回值无效。” :-( – TCS 2011-03-15 17:15:41
@strDisplayName - 那么我认为你必须从ADO中继续,它不能理解'varchar(max)'。现代编程接口是SQL Native Client,我已经很方便地提供了一个链接到文档: - | – 2011-03-15 18:45:57
感谢您的帮助:-) – TCS 2011-03-15 22:20:46