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


Преобразования типа данных 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.

См. также

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