Ответ 1
Вам не нужен SELECT
DECLARE @LastChangeDate as date
SET @LastChangeDate = GetDate()
Я пытаюсь получить текущую дату в переменной внутри хранимой процедуры SQL, используя следующие команды
DECLARE @LastChangeDate as date
SET @LastChangeDate = SELECT GETDATE()
Это дает мне следующую ошибку: "Неверный синтаксис рядом с" SELECT "
Это первая хранимая процедура, которую я когда-либо писал, поэтому я не знаком с тем, как переменные работают внутри SQL.
Вам не нужен SELECT
DECLARE @LastChangeDate as date
SET @LastChangeDate = GetDate()
Просто используйте GetDate()
not Select GetDate()
DECLARE @LastChangeDate as date
SET @LastChangeDate = GETDATE()
но если это SQL Server, вы также можете инициализировать тот же шаг, что и объявление...
DECLARE @LastChangeDate date = getDate()
DECLARE @LastChangeDate as date
SET @LastChangeDate = GETDATE()
SELECT @LastChangeDate = GETDATE()
Вы также можете использовать CURRENT_TIMESTAMP
для этого.
В соответствии с BOL CURRENT_TIMESTAMP
является ANSI SQL
euivalent до GETDATE()
DECLARE @LastChangeDate AS DATE;
SET @LastChangeDate = CURRENT_TIMESTAMP;