Функция SQL Server CURRENT_TIME

В этом руководстве вы узнаете, как использовать функцию 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;

Вот что получилось:

Функция SQL Server current_time

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

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

Мирослав С.

Автор статей, ИБ-специалист