[英]Syntax error near 'SELECT'
“第9行'SELECT'附近的語法錯誤”
ALTER PROCEDURE "DBA"."ultimaDataMigracao"()
RESULT( ultimaData TIMESTAMP)
BEGIN
IF EXISTS (SELECT * FroM migracao_controlo) THEN
SELECT max(DataMigracao)
From migracao_controlo;
ELSE
INSERT INTO migracao_controlo (Id, DataMigracao) VALUES ('1','2000-01-01 00:00:00')
SELECT max(DataMigracao)
From migracao_controlo;
END IF
END
我正在嘗試選擇表中最大的時間戳,但是沒有要插入“ 2000-01-01 00:00:00”的內容,然后選擇它。
有人可以幫忙嗎? 我不確定為什么它不起作用。
您希望在INSERT
語句之后添加分號( ;
),以確保數據庫將其視為與SELECT
分開的單獨語句。
你可以試試這個
ALTER PROCEDURE "DBA"."ultimaDataMigracao"()
RESULT( ultimaData TIMESTAMP)
BEGIN
IF EXISTS (SELECT * FroM migracao_controlo) THEN
SELECT max(DataMigracao)
From migracao_controlo;
ELSE
INSERT INTO migracao_controlo (Id, DataMigracao)
SELECT 1, nvl(max(DataMigracao),to_date('01012000','DDMMYYYY'))
From migracao_controlo;
END IF
END
如果第一個為null,則nvl返回第二個參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.