Udostępnij przez


Mapowanie typu danych w ITableDefinition

Przy tworzeniu tabeli za pomocą ITableDefinition::CreateTable funkcjaSQL Server Można określić konsumenta macierzystego dostawca klient OLE DB SQL Server typy danych w pwszTypeName członkiem tablicy DBCOLUMNDESC, który jest przekazywany.Jeżeli konsument Określa typ danych kolumna, według nazwy, mapowanie, reprezentowane przez typ danych OLE DB wType element członkowski członkowski struktury DBCOLUMNDESC jest ignorowana.

Podczas określania nowych typów danych kolumn o typach danych OLE DB przy użyciu struktury DBCOLUMNDESC wType składnikSQL Server Macierzystego dostawca klient OLE DB w następujący sposób mapowania typów danych OLE DB.

Typ danych OLE DB

SQL Server

Typ danych

Dodatkowe informacje

DBTYPE_BOOL

bit

DBTYPE_BYTES

plik binarny, varbinarnym, obraz or varbinary(max)

The SQL Server Native klient OLE DB dostawca inspects the ulColumnSize element członkowski of the DBCOLUMNDESC structure.Na podstawie wartości i wersja SQL Server wystąpienie, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB obraz.

Jeśli wartość ulColumnSize jest mniejsza niż maksymalna długość plik binarny danych wpisz kolumna, a następnie SQL Server DBCOLUMNDESC sprawdzi macierzystego dostawca klient OLE DB rgPropertySets element członkowski członkowski.W przypadku DBPROP_COL_FIXEDLENGTH VARIANT_TRUE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB plik binarny.Jeśli wartość właściwość jest VARIANT_FALSE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB varbinarnym.W obu przypadek, the DBCOLUMNDESC ulColumnSize element członkowski członkowski Określa szerokość kolumna programu SQL Server tworzony.

DBTYPE_CY

pieniądze

DBTYPE_DBTIMESTAMP

data_i_godzina

DBTYPE_GUID

Uniqueidentifier

DBTYPE_I2

smallint

DBTYPE_I4

int

DBTYPE_NUMERIC

numeric

The SQL Server Native klient OLE DB dostawca inspects the DBCOLUMDESC bPrecision and bScale members to determine precision and scale for the numeric kolumna.

DBTYPE_R4

rzeczywiste

DBTYPE_R8

zmiennoprzecinkowe

DBTYPE_STR

CHAR, varchar, tekst, or varchar(max)

The SQL Server Native klient OLE DB dostawca inspects the ulColumnSize element członkowski of the DBCOLUMNDESC structure.Na podstawie wartości i wersja SQL Server wystąpienie, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB tekst.

Jeśli wartość ulColumnSize jest mniejsza niż maksymalna długość znaków wielobajtowych kolumna Typ danych, a następnie SQL Server DBCOLUMNDESC sprawdzi macierzystego dostawca klient OLE DB rgPropertySets element członkowski członkowski.W przypadku DBPROP_COL_FIXEDLENGTH VARIANT_TRUE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB CHAR.Jeśli wartość właściwość jest VARIANT_FALSE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB varchar.W obu przypadkach DBCOLUMNDESC ulColumnSize Określa, szerokość element członkowski członkowskiSQL Server Kolumna utworzona.

DBTYPE_UDT

UDT

Poniższe informacje są używane w DBCOLUMNDESC struktury przez ITableDefinition::CreateTable podczas UDT kolumny są wymagane:

DBTYPE_UI1

tinyint

DBTYPE_WSTR

nchar, nvarchar, ntext, or nvarchar(max)

The SQL Server Native klient OLE DB dostawca inspects the ulColumnSize element członkowski of the DBCOLUMNDESC structure.Na podstawie wartości, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB ntext.

Jeśli wartość ulColumnSize jest mniejsza niż maksymalna długość Unicode znaku typu kolumna danych, następnie SQL Server DBCOLUMNDESC sprawdzi macierzystego dostawca klient OLE DB rgPropertySets element członkowski członkowski.W przypadku DBPROP_COL_FIXEDLENGTH VARIANT_TRUE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB nchar.Jeśli wartość właściwość jest VARIANT_FALSE, SQL Server Typ, który ma mapuje macierzystego dostawca klient OLE DB nvarchar.W obu przypadkach DBCOLUMNDESC ulColumnSize Określa, szerokość element członkowski członkowskiSQL Server Kolumna utworzona.

DBTYPE_XML

XML

Uwaga

Podczas tworzenia nowej tabela, SQL Server Macierzystego dostawca klient OLE DB mapuje tylko OLE DB danych typ wyliczenia wartości określone w powyższej tabela. Podjęto próbę utworzenia tabela z kolumną inny typ danych OLE DB generuje błąd.

See Also

Concepts