Pourquoi GETDATE () est-il un identifiant invalide, déclare l'outil Oracle Sql Developer lorsque je débogue ce code:
CREATE OR REPLACE TRIGGER SPName
AFTER UPDATE
ON TableName
FOR EACH ROW
BEGIN
UPDATE TableName SET LastModifiedDate = GETDATE() WHERE TableName.DET_ID = :new.DET_ID;
END;
Je pense que vous voulez SYSDATE
, pas GETDATE()
. Essayez le:
UPDATE TableName SET LastModifiedDate = (SELECT SYSDATE FROM DUAL);
Utilisez l'équivalent Oracle de getdate()
qui est sysdate
. Lisez à propos ici. Getdate () appartient à SQL Server, ne fonctionnera pas sur Oracle.
L'autre option est current_date
getdate()
pour MS-SQL, sysdate
pour serveur Oracle
SYSDATE
et GETDATE
fonctionnent de manière identique.
SYSDATE
est compatible avec la syntaxe Oracle et GETDATE
est compatible avec la syntaxe Microsoft SQL Server.