Share via


Miglioramenti relativi a data e ora

Si applica a: SQL Server Azure SQL DatabaseIstanza gestita di SQL di Azure Azure SynapseAnalytics AnalyticsPlatform System (PDW)

Download del driver OLE DB

In questo argomento viene descritto il supporto OLE DB Driver per SQL Server per i tipi di dati data e ora aggiunti in SQL Server 2008 (10.0.x).

Per altre informazioni sui miglioramenti relativi a data/ora, vedere Miglioramenti relativi a data e ora (OLE DB).

Uso

Nelle sezioni seguenti vengono descritte le diverse modalità di utilizzo dei nuovi tipi di data e ora.

Utilizzare il tipo date come tipo di dati distinto

A partire da SQL Server 2008 (10.0.x), il supporto avanzato per i tipi di data/ora rende più efficiente usare il tipo OLE DB DBTYPE_DBDATE.

Utilizzare il tipo time come tipo di dati distinto

OLE DB include già un tipo di dati che contiene solo l'ora, ovvero DBTYPE_DBTIME, che garantisce precisione pari a 1 secondo.

Il nuovo tipo di dati time di SQL Server ha una precisione frazionaria dei secondi pari a 100 nanosecondi. Ciò richiede un nuovo tipo in OLE DB Driver per SQL Server: DBTYPE_DBTIME2. Le applicazioni esistenti scritte per utilizzare le ore senza secondi frazionari possono utilizzare colonne time(0). Il tipo OLE DB DBTYPE_TIME esistente e i relativi struct funzioneranno correttamente, a meno che le applicazioni non si basino sul tipo restituito nei metadati.

Utilizzare il tipo time come tipo di dati distinto con precisione frazionaria dei secondi estesa

Alcune applicazioni, ad esempio le applicazioni di controllo dei processi e di produzione, richiedono la possibilità di gestire i dati di tipo time con una precisione pari a fino 100 nanosecondi. A questo scopo, in OLE DB è disponibile il nuovo tipo DBTYPE_DBTIME2.

Utilizzare il tipo datetime con precisione frazionaria dei secondi estesa

OLE DB definisce già un tipo con una precisione pari fino a 1 nanosecondo. Questo tipo, tuttavia, è già usato dalle applicazioni di SQL Server esistenti, che garantiscono una probabile precisione pari solo a 1/300 di secondo. Il nuovo tipo datetime2(3) non è direttamente compatibile con il tipo datetime esistente. Se vi è un rischio che tale tipo di dati influisca negativamente sul comportamento dell'applicazione, le applicazioni devono utilizzare un nuovo flag DBCOLUMN per determinare il tipo di server effettivo.

Utilizzare il tipo datetime con precisione frazionaria dei secondi estesa e fuso orario

Alcune applicazioni richiedono valori datetime con informazioni sul fuso orario. Questa necessità è supportata dal nuovo tipo DBTYPE_DBTIMESTAMPOFFSET.

Utilizzare dati di tipo date/time/datetime/datetimeoffset con conversioni sul lato client coerenti con le conversioni esistenti

Le conversioni vengono estese in modo coerente per includere conversioni tra tutti i tipi di data e ora introdotti in SQL Server 2008 (10.0.x).

Vedere anche

Driver OLE DB per funzionalità di SQL Server