Использование SQL Server - какой метод лучше всего использовать для получения даты? Есть разница?
Получение даты на сервере sql, CURRENT_TIMESTAMP против GetDate ()
Ответы (4)
CURRENT_TIMESTAMP - это стандартный ANSI SQL, и теоретически это один крошечный островок «не нужно менять» среди тысяч строк SQL, специфичных для SQL Server, если вам когда-нибудь понадобится переместить базы данных ...
{fn now()}
эквивалентно, если хотите действительно придерживаться старой школы.
- person brianary; 22.10.2015
CURRENT_TIMESTAMP является частью спецификации ANSI SQL. GETDATE () - это специфичная для SQL Server функция, унаследованная от исходного кода Sybase, на котором основан SQL Server.
Но они делают то же самое.
Я голосую за CURRENT_TIMESTAMP
по причинам «переносимости», т.е. зачем быть специфичным для SQL Server, когда есть прямой эквивалент SQL-92?
PS почему не было названо getdatetime()
? Теперь, когда SQL Server 2008 имеет типы данных DATE
и TIME
, мы можем надеяться получить поддержку для SQL-92 CURRENT_DATE
и CURRENT_TIME
, и тогда getdate()
может быть еще более запутанным.
Электронная документация сообщает нам, что CURRENT_TIMESTAMP «эквивалентен GETDATE ()».