- 论坛徽章:
- 0
|
我的意思是通过sql sp调用com中的函数,被调用的函数参数类型是variant.
在sp中用sp_OAMethod调用这个函数的时候对应相应的variant参数我 应该如何传递参数
我的调用是这样:
EXEC @intRetCode = sp_OAMethod @i,\'TagUpdate\',NULL,@DeviceID, \'HANDET\', 1
com中函数是这样的:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE TagUpdate(
/* [in] */ VARIANT equipmentID,
/* [in] */ BSTR tag,
/* [in] */ VARIANT value,
/* [retval][out] */ short *nResult) = 0;
equipmentid 我的得到的是61234
我试过 EXEC @intRetCode = sp_OAMethod @i,\'TagUpdate\',NULL,61234, \'HANDET\', 1
然后我把@deviceid设置为其他类型
declare @deviceid int / bigint /sql_variant
然后 set @deviceid = 61234
EXEC @intRetCode = sp_OAMethod @i,\'TagUpdate\',NULL, @deviceid , \'HANDET\', 1
结果传递的值都不对 |
|