Dela via


Metadata – datum- och tids- och schemarader

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Ladda ned OLE DB-drivrutins

Det här avsnittet innehåller information om KOLUMNER-rader och PROCEDURE_PARAMETERS raduppsättning. Den här informationen gäller förbättringar av OLE DB-datum och tid som introducerades i SQL Server 2008 (10.0.x).

RADERUPPSÄTTNING FÖR KOLUMNER

Följande kolumnvärden returneras för datum-/tidstyper:

Kolumntyp DATA_TYPE COLUMN_FLAGS, DBCOLUMNFLAGS_SS_ISVARIABLESCALE DATETIME_PRECISION
datum DBTYPE_DBDATE Klar 0
Tid DBTYPE_DBTIME2 Ställa 0..7
smalldatetime DBTYPE_DBTIMESTAMP Klar 0
datetime DBTYPE_DBTIMESTAMP Klar 3
datetime2 DBTYPE_DBTIMESTAMP Ställa 0..7
datetimeoffset DBTYPE_DBTIMESTAMPOFFSET Ställa 0..7

I COLUMN_FLAGS är DBCOLUMNFLAGS_ISFIXEDLENGTH alltid sant för datum-/tidstyper och följande flaggor är alltid falska:

  • DBCOLUMNFLAGS_CACHEDEFERRED

  • DBCOLUMNFLAGS_ISBOOKMARK

  • DBCOLUMNFLAGS_ISCHAPTER

  • DBCOLUMNFLAGS_ISLONG

  • DBCOLUMNFLAGS_ISROWID

  • DBCOLUMNFLAGS_ISROWVER

  • DBCOLUMNFLAGS_MAYDEFER

Återstående flaggor (DBCOLUMNFLAGS_ISNULLABLE, DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE och DBCOLUMNFLAGS_WRITEUNKNOWN) kan anges, beroende på hur kolumnen definieras.

En ny flagga, DBCOLUMNFLAGS_SS_ISVARIABLESCALE, finns i COLUMN_FLAGS så att ett program kan fastställa servertypen för kolumner där DATA_TYPE är DBTYPE_DBTIMESTAMP. DATETIME_PRECISION måste också användas för att identifiera servertypen.

DBCOLUMNFLAGS_SS_ISVARIABLESCALE är endast giltig när den är ansluten till en server som kör SQL Server 2008 (10.0.x) och senare versioner. DBCOLUMNFLAGS_SS_ISFIXEDSCALE är odefinierat när det är anslutet till servrar på nednivå.

PROCEDURE_PARAMETERS rader

DATA_TYPE innehåller samma värden som kolumnschemaraduppsättningen och TYPE_NAME innehåller servertypen.

En ny kolumn, SS_DATETIME_PRECISION, har lagts till för att returnera precisionen för typen som i kolumnen DATETIME_PRECISION, ungefär som raduppsättningen KOLUMNER.

PROVIDER_TYPES rader

Följande rader returneras för datum-/tidstyper:

Typ –>

Spalt
datum Tid smalldatetime datetime datetime2 datetimeoffset
TYPE_NAME datum Tid smalldatetime datetime datetime2 datetimeoffset
DATA_TYPE DBTYPE_DBDATE DBTYPE_DBTIME2 DBTYPE_DBTIMESTAMP DBTYPE_DBTIMESTAMP DBTYPE_DBTIMESTAMP DBTYPE_DBTIMESTAMPOFFSET
COLUMN_SIZE 10 16 16 23 27 34
LITERAL_PREFIX ' ' ' ' ' '
LITERAL_SUFFIX ' ' ' ' ' '
CREATE_PARAMS NOLL skala NOLL NOLL skala skala
IS_NULLABLE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE
CASE_SENSITIVE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE
SÖKBAR DB_SEARCHABLE DB_SEARCHABLE DB_SEARCHABLE DB_SEARCHABLE DB_SEARCHABLE DB_SEARCHABLE
UNSIGNED_ATTRIBUTE NOLL NOLL NOLL NOLL NOLL NOLL
FIXED_PREC_SCALE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE
AUTO_UNIQUE_VALUE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE
LOCAL_TYPE_NAME datum Tid smalldatetime datetime datetime2 datetimeoffset
MINIMUM_SCALE NOLL 0 NOLL NOLL 0 0
MAXIMUM_SCALE NOLL 7 NOLL NOLL 7 7
GUID NOLL NOLL NOLL NOLL NOLL NOLL
TYPELIB NOLL NOLL NOLL NOLL NOLL NOLL
VERSION NOLL NOLL NOLL NOLL NOLL NOLL
IS_LONG VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE VARIANT_FALSE
BEST_MATCH VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE om inte något av följande är sant:

Är klienten ansluten till en server på nednivå.

Egenskapen för kompatibilitetsanslutning för datatyp anger en kompatibilitetsnivå som är lika med 80.
VARIANT_TRUE om inte något av följande är sant:

Är klienten ansluten till en server på nednivå.

Egenskapen för kompatibilitetsanslutning för datatyp anger en kompatibilitetsnivå som är lika med 80.
VARIANT_TRUE
IS_FIXEDLENGTH VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE VARIANT_TRUE

OLE DB definierar endast MINIMUM_SCALE och MAXIMUM_SCALE för numeriska typer och decimaltyper, så OLE DB-drivrutinen för SQL Server-användning av dessa kolumner för tid, datetime2 och datetimeoffset är inte standard.

Se även

metadata (OLE DB)