Поделиться через


Преобразования типа данных datetime (ODBC)

Следующие привязки либо уже определены в ODBC, либо являются согласованными с расширением ODBC. Преобразования, поддерживаемые каждым поставщиком, определяются сообществом, обслуживаемым поставщиком; в результате — часто возникают несоответствия между поставщиками. Значения в квадратных скобках необязательны.

  • Формат строк типа datetime — «гггг-мм-дд[ чч:мм:сс[.9999999][ плюс/минус чч:мм]]».

  • Формат строк типа time — «чч:мм:сс[.9999999]».

  • Формат строк типа date — «гггг-мм-дд».

Преобразования из строк обеспечивают гибкость в отношении пробелов и ширины полей. Дополнительные сведения см. в разделе «Форматы данных: строки и литералы» раздела Поддержка типов данных для улучшений типов даты-времени ODBC.

Далее приведены общие правила преобразования.

  • Если время отсутствует, но получатель способен его хранить, оно устанавливается в нулевое значение.

  • Если дата отсутствует, но получатель может ее хранить, используется текущая дата.

  • Если в типе данных, используемых клиентом, отсутствует часовой пояс, но сервер может его хранить, дата сохраняется в часовом поясе клиента. Обратите внимание на отличие от поведения сервера.

  • Если в типе сервера отсутствует часовой пояс, а в типе клиента он есть, то перед сохранением на сервере время преобразуется в формат UTC.

  • Если время присутствует, но получатель не может его хранить, то компонент времени не обрабатывается.

  • Если дата присутствует, но получатель не может ее хранить, то компонент даты не обрабатывается.

  • Если при преобразовании из C в SQL возникает усечение секунд или долей секунд, то создается запись диагностики с кодом SQLSTATE 22008 и сообщением «Переполнение поля Datetime».

  • Если при преобразовании из SQL в C возникает усечение секунд или долей секунд, то создается запись диагностики с кодом SQLSTATE 01S07 и сообщением «Частичное усечение».

В этом разделе

  • Преобразования из C в SQL
    Перечисляет проблемы, которые необходимо решить при преобразовании типов C в типы даты-времени SQL Server.

  • Преобразования из SQL в C
    Перечисляет проблемы, которые необходимо решить при преобразовании типов даты и времени SQL Server в типы C.

См. также

Основные понятия

Улучшенная обработка даты и времени (ODBC)