Улучшения функций даты и времени
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
В этом разделе описывается поддержка OLE DB Driver for SQL Server для типов данных даты и времени, добавленных в SQL Server 2008 (10.0.x).
Дополнительные сведения об улучшениях функций даты и времени см. в этой статье.
Использование
В следующих разделах приводится описание различных способов использования новых типов даты и времени.
Использование Date как отдельного типа данных
Начиная с SQL Server 2008 (10.0.x), улучшенная поддержка типов даты и времени упрощает использование типа OLE DB DBTYPE_DBDATE.
Использование Time как отдельного типа данных
OLE DB уже имеет тип данных, представляющий время с точностью до 1 секунды — DBTYPE_DBTIME.
Новый тип данных времени SQL Server имеет дробные секунды до 100 наносекунд. Для этого требуется новый тип в OLE DB Driver for SQL Server: DBTYPE_DBTIME2. Существующие приложения, не работающие с долями секунд, могут пользоваться столбцами time(0). Существующий тип OLE DB DBTYPE_TIME и соответствующие ему структуры должны работать правильно, если приложение не использует тип, возвращаемый в метаданных.
Использование Time как отдельного типа данных с расширенной точностью до долей секунд
Некоторым приложениям, например приложениям для управления производством и процессами, необходима возможность обработки времени с точностью до 100 наносекунд. Для этой цели в OLE DB добавлен новый тип DBTYPE_DBTIME2.
Использование Datetime как отдельного типа данных с расширенной точностью до долей секунд
В OLE DB уже имеется определение типа с точностью до 1 наносекунды. Однако этот тип уже используется существующими приложениями SQL Server, и такие приложения ожидают только 1/300 секунды точности. Новый тип datetime2(3) несовместим напрямую с существующим типом datetime. Если есть риск, что он повлияет на работу приложения, необходимо при определении фактического типа на сервере пользоваться новым флагом DBCOLUMN.
Использование Datetime с расширенной точностью до долей секунд и часовым поясом
Некоторым приложениям необходимы значения даты-времени вместе со сведениями о часовом поясе. Эта возможность поддерживается новым типом DBTYPE_DBTIMESTAMPOFFSET (OLE DB).
Использование данных Date/Time/Datetime/Datetimeoffset с преобразованиями на стороне клиента, согласующимися с существующими преобразованиями
Преобразования расширяются согласованно, чтобы включить преобразования между всеми типами даты и времени, представленными в SQL Server 2008 (10.0.x).