后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。
The GetColumnSQLVARIANT method retrieves a sql_variant column as an array of bytes.
语法
object
.GetColumnSQLVARIANT( 
Row
, 
Column
)
as Byte
Parts
- object
 Expression that evaluates to an object in the Applies To list.
- Row
 Long integer that identifies a row by ordinal position.
- Column
 Long integer that identifies a column by ordinal position.
Prototype (C/C++)
HRESULT GetColumnSQLVARIANT(
long lRow, 
long lColumn, 
LPVOID *pvData);
Returns
A sql_variant representation of the value of a QueryResults2 object result set member
备注
GetColumnSQLVARIANT returns the contents of a sql_variant column in a typeless form. An application written in C++ can then cast the contents of the array into the required data type.
Prior to calling GetColumnSQLVARIANT, call GetColumnSQLVARIANTDataType to retrieve the underlying data type of the specified sql_variant column, and then call the GetColumnSQLVARIANTLength method to determine the number of bytes in the column.
Examples
//Retrieve the underlying data type and number of bytes in the column.
//Then return the contents of the column.
SQLDMO_BSTR str;
Long                    lLen;
Void *                  pRetVal;
pQueryRes2out->GetColumnSQLVARIANTDataType(0, 0, _T("T1"),  &str);
pQueryRes2out->GetColumnSQLVARIANTLength(0, 0, _T("T1"),  &lLen);
pQueryRes2out->GetColumnSQLVARIANT(0, 0,  &pRetVal);
_tprintf(TEXT("%s\n"), (TCHAR *)pRetVal);
CoTaskMemFree(pRetVal);
| .gif) 注意: | 
|---|
| If an application calls GetColumnSQLVARIANT on an instance of SQL Server version 7.0, the constant, SQLDMO_E_SQL80ONLY, and the message "This property or method requires Microsoft SQL Server 2000 or later" are returned. | 
Applies To:
请参阅
参考
GetColumnSQLVARIANTDataType Method
GetColumnSQLVARIANTLength Method