Наиболее переносимый формат строки даты SQL - PullRequest
4 голосов
/ 02 апреля 2009

На разных диалектах SQL какое строковое представление для Date и / или DateTime наиболее вероятно будет правильно интерпретировано? Есть ли стандарт SQL? Два ответа идентичны или похожи?

EDIT:

Что касается предложений, можем ли мы прокомментировать любые известные диалекты SQL, которые не соответствуют?

Ответы [ 3 ]

7 голосов
/ 02 апреля 2009

Могу поспорить, что стандарт времени даты ISO 8601, скорее всего, будет таким.

'YYYY-MM-DDThh: мм: ssTZD'

Или, может быть, небольшое изменение:

'ГГГГ-ММ-ДД чч: мм: сс'

http://www.w3.org/TR/NOTE-datetime

2 голосов
/ 02 апреля 2009

Если вы хотите быть переносимым между базами данных, возможно, вам следует рассмотреть возможность абстрагирования всего, используя что-то вроде ADO или OTL. Практически все базы данных поддерживают соединения ODBC, и вы можете просто использовать что-то вроде контейнера даты и времени OTL для записи и чтения дат.

0 голосов
/ 02 июля 2014

Существует также DATE'2014-07-02', который принят Oracle, DB2, MySQL и Teradata, но не MS SQL или PostgreSQL.

...