我想在更新之前保存日誌表我的db數據。另外,爲了記錄日誌,我想保存更新日期和時間。但是,甲骨文給了我「ORA-00947:沒有足夠的價值」的錯誤。儘管列和值匹配,Oracle給我錯誤ORA-00947
我在Google上搜索了這個錯誤,但是所有的答案都提到了數值和列數不匹配的情況。在我的情況下,他們匹配。 我錯在哪裏?
INSERT INTO db.eee_log (process_date, process_time, id, name, type)
VALUES(trunc(sysdate),
TO_CHAR(SYSTIMESTAMP,'HH24:MI:SS.FF5'),
(select p.id, p.name, p.type
from db.eee p
where id = 22
and name = 'xxx'
and type = 'xx'));
不能使用一個select語句在'insert'語句中指定你使用它的方式多列提供值。您需要決定僅使用'values()'子句還是僅使用'select'語句重寫您的查詢。 –
爲什麼你在單獨的列中存儲日期和時間?您似乎也插入了您要過濾的相同值,所以您實際上是否需要按「eee」表,或者您是否可以直接插入過濾器值? –