Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questo argomento vengono fornite informazioni sui set di righe COLUMNS e PROCEDURE_PARAMETERS. Queste informazioni sono correlate ai miglioramenti di data e ora di OLE DB introdotti in SQL Server 2008.
Set di righe COLUMNS
Per i tipi di data/ora vengono restituiti i valori di colonna seguenti:
| Tipo di colonna | tipo di dati | COLUMN_FLAGS, DBCOLUMFLAGS_SS_ISVARIABLESCALE | DATETIME_PRECISION |
|---|---|---|---|
| dattero | DBTYPE_DBDATE | Chiaro | 0 |
| tempo | DBTYPE_DBTIME2 | Impostare | 0..7 |
| smalldatetime | DBTYPE_DBTIMESTAMP | Chiaro | 0 |
| data e ora | DBTYPE_DBTIMESTAMP | Chiaro | 3 |
| datetime2 | DBTYPE_DBTIMESTAMP | Impostare | 0..7 |
| datetimeoffset | DBTYPE_DBTIMESTAMPOFFSET | Impostare | 0..7 |
In COLUMN_FLAGS il valore di DBCOLUMNFLAGS_ISFIXEDLENGTH è sempre true per i tipi date/time e il valore dei flag seguenti è sempre false:
DBCOLUMNFLAGS_CACHEDEFERRED
DBCOLUMNFLAGS_ISBOOKMARK
DBCOLUMNFLAGS_ISCHAPTER
DBCOLUMNFLAGS_ISLONG
DBCOLUMNFLAGS_ISROWID
DBCOLUMNFLAGS_ISROWVER
DBCOLUMNFLAGS_MAYDEFER
I flag restanti (DBCOLUMNFLAGS_ISNULLABLE, DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE e DBCOLUMNFLAGS_WRITEUNKNOWN) possono essere impostati in base alla modalità di definizione della colonna.
In COLUMN_FLAGS è disponibile un nuovo flag DBCOLUMNFLAGS_SS_ISVARIABLESCALE che consente di determinare il tipo di server delle colonne nelle applicazioni, dove DATA_TYPE è DBTYPE_DBTIMESTAMP. Per identificare il tipo di server è necessario utilizzare anche DATETIME_PRECISION.
DBCOLUMNFLAGS_SS_ISVARIABLESCALE è valido solo quando si è connessi a un server SQL Server 2008 o versione successiva. DBCOLUMNFLAGS_SS_ISFIXEDSCALE non è definito quando si è connessi a server legacy.
Set di righe PROCEDURE_PARAMETERS
DATA_TYPE contiene gli stessi valori del set di righe dello schema COLUMNS e TYPE_NAME contiene il tipo di server.
Una nuova colonna, SS_DATETIME_PRECISION, è stata aggiunta per restituire la precisione del tipo come nella colonna DATETIME_PRECISION, in modo analogo al set di righe COLUMNS.
Set di righe PROVIDER_TYPES
Per i tipi di data/ora vengono restituite le righe seguenti:
| Tipo -> colonna |
dattero | tempo | smalldatetime | data e ora | datetime2 | datetimeoffset |
|---|---|---|---|---|---|---|
| TYPE_NAME | dattero | tempo | smalldatetime | data e ora | datetime2 | datetimeoffset |
| tipo di dati | 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 | NULLO | scala | NULLO | NULLO | scala | scala |
| 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 |
| RICERCABILE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE |
| UNSIGNED_ATTRIBUTE | NULLO | NULLO | NULLO | NULLO | NULLO | NULLO |
| 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 | dattero | tempo | smalldatetime | data e ora | datetime2 | datetimeoffset |
| MINIMUM_SCALE | NULLO | 0 | NULLO | NULLO | 0 | 0 |
| MAXIMUM_SCALE | NULLO | 7 | NULLO | NULLO | 7 | 7 |
| Identificatore Unico Globale (GUID) | NULLO | NULLO | NULLO | NULLO | NULLO | NULLO |
| TYPELIB | NULLO | NULLO | NULLO | NULLO | NULLO | NULLO |
| VERSIONE | NULLO | NULLO | NULLO | NULLO | NULLO | NULLO |
| IS_LONG | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| BEST_MATCH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE a meno che non si verifichi una delle condizioni seguenti: - Il client è connesso a un server di livello inferiore. - La proprietà di connessione di compatibilità del tipo di dati specifica un livello di compatibilità uguale a 80. |
VARIANT_TRUE a meno che non si verifichi una delle condizioni seguenti: - Il client è connesso a un server di livello inferiore. - La proprietà di connessione di compatibilità del tipo di dati specifica un livello di compatibilità uguale a 80. |
VARIANT_TRUE |
| IS_FIXEDLENGTH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE |
OLE DB definisce solo MINIMUM_SCALE e MAXIMUM_SCALE per i tipi numerici e decimali, pertanto sql Server Native Client usa queste colonne per ora, datetime2 e datetimeoffset non standard.