Поделиться через


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.

Applies To: