Udostępnij przez


Parametr i metadane zestawu zestaw wierszy

Ten temat zawiera informacje na temat typów i typ elementów, związane z datą OLE DB i czas rozszerzenia dla SQL Server 2008.

  • Struktura DBBINDING

  • ICommandWithParameters::GetParameterInfo

  • ICommandWithParameters::SetParameterInfo

  • IColumnsRowset::GetColumnsRowset

  • IColumnsInfo::GetColumnInfo

ICommandWithParameters::GetParameterInfo

Następujące informacje są zwracane w strukturze DBPARAMINFO za pośrednictwem prgParamInfo:

Typ parametru

wType

ulParamSize

bPrecision

bScale

dwFlags

DBPARAMFLAGS_SS_ISVARIABLESCALE

data

DBTYPE_DBDATE

6

10

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

godzina

DBTYPE_DBTIME2

10

8, 10..16

0..7

Zestaw

Smalldatetime

DBTYPE_DBTIMESTAMP

16

16

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

data_i_godzina

DBTYPE_DBTIMESTAMP

16

23

3

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

datetime2

DBTYPE_DBTIMESTAMP

16

19,21..27

0..7

Zestaw

datetimeoffset

DBTYPE_DBTIMESTAMPOFFSET

20

26,28..34

0..7

Zestaw

Należy zauważyć, że w niektórych przypadkach zakresów wartości nie są ciągłe.Jest to spowodowane dodanie przecinek dziesiętny podczas dokładność ułamkowa jest większa od zera.

DBPARAMFLAGS_SS_ISVARIABLESCALE jest prawidłowa tylko wtedy, gdy połączenie, SQL Server 2008 serwer. Nigdy nie jest DBPARAMFLAGS_SS_ISVARIABLESCALE zestaw podłączenia do serwerów niskiego poziom.

Typy parametrów domyślnych ani żadnego innego rodzaju i ICommandWithParameters::SetParameterInfo

Informacje zawarte w strukturze DBPARAMBINDINFO musi spełniać następujące warunki:

pwszDataSourceType

(specyficzne dla dostawca)

pwszDataSourceType

(OLE DB rodzajowe)

ulParamSize

bScale

 

DBTYPE_DATE

6

Ignorowany

data

DBTYPE_DBDATE

6

Ignorowany

 

DBTYPE_DBTIME

10

Ignorowany

godzina

DBTYPE_DBTIME2

10

0..7

Smalldatetime

 

16

Ignorowany

data_i_godzina

 

16

Ignorowany

datetime2 lub DBTYPE_DBTIMESTAMP

DBTYPE_DBTIMESTAMP

16

0..7

datetimeoffset

DBTYPE_DBTIMESTAMPOFFSET

20

0..7

The bPrecision parameter is ignored.

"DBPARAMFLAGS_SS_ISVARIABLESCALE" jest ignorowane podczas wysyłania danych do serwera.Aplikacje można wymusić stosowanie typów starszych strumienia danych tabelarycznych (TDS) przy użyciu nazwy typu specyficznym dla dostawca „datetime"i"smalldatetime". When connected to SQL Server 2008 (or later) servers, "datetime2" format will be used and an implicit server conversion will occur, if necessary, when the type name is "datetime2" or "DBTYPE_DBTIMESTAMP".bScale is ignored if the provider specific type names "datetime" or "smalldatetime" are used.W przeciwnym razie appications musi zapewnić, że bScale jest zestaw poprawnie. Aplikacje zainstalowane poprzez uaktualnienie systemu MDAC i SQL Server Macierzysta klient z SQL Server 2005Użycie tego "DBTYPE_DBTIMESTAMP" powiedzie się, jeśli nie zostanie ustawiony bScale poprawnie. Po podłączeniu do wystąpienia serwera wcześniej niż SQL Server 2008, bScalewartość inną niż 0 lub 3 "DBTYPE_DBTIMESTAMP" jest błąd i zostanie zwrócony E_FAIL.

Kiedy ICommandWithParameters::SetParameterInfo nie jest wywoływana, imples dostawca, rodzaj serwera z typ wiązanie, jak określono w IAccessor::CreateAccessor w następujący sposób:

Typ wiązanie

pwszDataSourceType

(specyficzne dla dostawca)

DBTYPE_DATE

datetime2(0)

DBTYPE_DBDATE

data

DBTYPE_DBTIME

czas(0)

DBTYPE_DBTIME2

czas(7)

DBTYPE_DBTIMESTAMP

datetime2(7)

DBTYPE_DBTIMESTAMPOFFSET

datetimeoffset(7)

IColumnsRowset::GetColumnsRowset

IColumnsRowset::GetColumnsRowset zwraca następujące kolumny:

Typ kolumna

DBCOLUMN_TYPE

DBCOLUM_COLUMNSIZE

DBCOLUMN_PRECISION

DBCOLUMN_SCALE DBCOLUMN_DATETIMEPRECISION

DBCOLUMN_FLAGS DBCOLUMNFLAGS_SS_ISVARIABLESCALE

data

DBTYPE_DBDATE

6

10

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

godzina

DBTYPE_DBTIME2

10

8, 10..16

0..7

Zestaw

Smalldatetime

DBTYPE_DBTIMESTAMP

16

16

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

data_i_godzina

DBTYPE_DBTIMESTAMP

16

23

3

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

datetime2

DBTYPE_DBTIMESTAMP

16

19, 21..27

0..7

Zestaw

datetimeoffset

DBTYPE_DBTIMESTAMPOFFSET

20

26, 28..34

0..7

Zestaw

W DBCOLUMN_FLAGS DBCOLUMNFLAGS_ISFIXEDLENGTH zawsze ma wartość true dla typu Data/Godzina i zawsze są fałszywe następujące flagi:

  • DBCOLUMNFLAGS_CACHEDEFERRED

  • DBCOLUMNFLAGS_ISBOOKMARK

  • DBCOLUMNFLAGS_ISCHAPTER

  • DBCOLUMNFLAGS_ISLONG

  • DBCOLUMNFLAGS_ISROWID

  • DBCOLUMNFLAGS_ISROWVER

  • DBCOLUMNFLAGS_MAYDEFER

Pozostałe flagi (DBCOLUMNFLAGS_ISNULLABLE DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE i DBCOLUMNFLAGS_WRITEUNKNOWN) zestaw w zależności od sposobu zdefiniowania kolumna i rzeczywiste kwerendy.

Nowe flagi DBCOLUMNFLAGS_SS_ISVARIABLESCALE znajduje się w DBCOLUMN_FLAGS, aby umożliwić aplikacji w celu określenia typu serwera kolumn, gdzie DBCOLUMN_TYPE jest DBTYPE_DBTIMESTAMP.DBCOLUMN_SCALE lub DBCOLUMN_DATETIMEPRECISION muszą być również używane do identyfikowania typu serwera.

DBCOLUMNFLAGS_SS_ISVARIABLESCALE jest prawidłowa tylko wtedy, gdy połączenie, SQL Server 2008 serwer. DBCOLUMNFLAGS_SS_ISVARIABLESCALE jest niezdefiniowana podłączenia do serwerów niskiego poziom.

IColumnsInfo::GetColumnInfo

Struktura DBCOLUMNINFO zwraca następujące informacje:

Typ parametru

wType

ulColumnSize

bPrecision

bScale

dwFlags

DBPARAMFLAGS_SS_ISVARIABLESCALE

data

DBTYPE_DBDATE

6

10

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

czas(1..7)

DBTYPE_DBTIME2

10

8, 10..16

0..7

Zestaw

Smalldatetime

DBTYPE_DBTIMESTAMP

16

16

0

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

data_i_godzina

DBTYPE_DBTIMESTAMP

16

23

3

Odwołania do urządzenie źródłowe podraportów i dane z ścieżki względne nie są obsługiwane przy użyciu tej metoda.

datetime2

DBTYPE_DBTIMESTAMP

16

19, 21..27

0..7

Zestaw

datetimeoffset

DBTYPE_DBTIMESTAMPOFFSET

20

26, 28..34

0..7

Zestaw

W dwFlagsDBCOLUMNFLAGS_ISFIXEDLENGTH zawsze ma wartość true dla typu Data/Godzina i zawsze są fałszywe następujące flagi:

  • DBCOLUMNFLAGS_CACHEDEFERRED

  • DBCOLUMNFLAGS_ISBOOKMARK

  • DBCOLUMNFLAGS_ISCHAPTER

  • DBCOLUMNFLAGS_ISLONG

  • DBCOLUMNFLAGS_ISROWID

  • DBCOLUMNFLAGS_ISROWVER MAYDEFER

zestaw pozostałe flagi (DBCOLUMNFLAGS_ISNULLABLE DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE i DBCOLUMNFLAGS_WRITEUNKNOWN).

A new flag DBCOLUMNFLAGS_SS_ISVARIABLESCALE is provided in dwFlags to allow an application to determine the server type of columns, where wType is DBTYPE_DBTIMESTAMP.bScale must also be used to identify the server type.

See Also

Concepts