GetColumnSQLVARIANT Method
В будущей версии 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 GetColumnSQLVARIANTDataTypeto 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);
Примечание |
---|
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. |