В этом руководстве вы узнаете, как использовать функцию SQL Server CURRENT_TIMESTAMP для получения текущей системной метки времени базы данных в виде значения DATETIME.
Обзор SQL Server CURRENT_TIMESTAMP
Функция CURRENT_TIMESTAMP возвращает текущую временную метку операционной системы сервера, на котором работает база данных SQL Server. Возвращаемая временная метка представляет собой значение DATETIME без смещения часового пояса.
Функция CURRENT_TIMESTAMP не принимает аргументов:
CURRENT_TIMESTAMP
CURRENT_TIMESTAMP — это эквивалент GETDATE() в ANSI SQL.
Функцию CURRENT_TIMESTAMP можно использовать везде, где принимается выражение DATETIME.
Примеры функции SQL Server CURRENT_TIMESTAMP
Давайте рассмотрим пример использования функции CURRENT_TIMESTAMP.
A) Простой пример CURRENT_TIMESTAMP
В следующем примере функция CURRENT_TIMESTAMP используется для возврата текущей даты и времени:
SELECT
CURRENT_TIMESTAMP AS current_date_time;
Вот что получилось:
current_date_time ----------------------- 2019-02-23 20:02:21.550 (1 row affected)
B) Пример использования функции CURRENT_TIMESTAMP в качестве значения по умолчанию для столбцов таблицы
Сначала создайте новую таблицу с именем current_timestamp_demos, столбец created_at которой принимает значение по умолчанию в качестве временной метки, в которую вставляется строка:
CREATE TABLE current_timestamp_demos
(
id INT IDENTITY,
msg VARCHAR(255) NOT NULL,
created_at DATETIME NOT NULL
DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(id)
);
Во-вторых, вставьте две строки в таблицу:
INSERT INTO current_timestamp_demos(msg)
VALUES('This is the first message.');
INSERT INTO current_timestamp_demos(msg)
VALUES('current_timestamp demo');
В-третьих, запросите данные из таблицы current_timestamp_demos:
SELECT
id,
msg,
created_at
FROM
current_timestamp_demos;
Вот что получилось:

Как ясно видно из выходных данных, значения в столбце created_at приняли временную метку, возвращаемую функцией CURRENT_TIMESTAMP.
В этом руководстве вы узнали, как использовать функцию SQL Server CURRENT_TIMESTAMP для возврата текущей системной метки времени базы данных в виде значения DATETIME.


