bonjour,
voila, j'ai quelques problemes pour executé un trigger avec l'api OCI.
Voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 CREATE SEQUENCE "ACTION_SOURCE_RID_SEQ" START WITH 1 NOMAXVALUE CREATE TABLE "ACTION_SOURCE" ("RID" NUMBER(22) NOT NULL ,"VERSION" NUMBER(22),"ACT_SRC_CODE" CHAR(5),"ACT_SRC_DESC" CHAR(30),"ACT_SRC_ABBR" CHAR(10), PRIMARY KEY ("RID")) CREATE OR REPLACE TRIGGER "ACTION_SOURCE_UPD" BEFORE UPDATE ON ACTION_SOURCE FOR EACH ROW DECLARE TMP INTEGER; BEGIN IF (:NEW.ACT_SRC_CODE <> :OLD.ACT_SRC_CODE) THEN raise_application_error(-20079, 'Master key violation in ACTION_SOURCE'); END IF; :NEW.VERSION := :OLD.VERSION + 1; END;
OCI me met l'erreur suivante
ORA-24344: opÚration rÚussie avec erreur de compilation
et avec toad, il dit ceci:
PLS-00103: Symbole "" rencontré à la place d'un des symboles suivants :
begin function package pragma procedure subtype type use
<identificateur> <identificateur entre guillemets> form
curre
La ou c'est drole, c'est que si j'execute la commande via toad sans rien toucher . elle passe et si je la sauve dnas un fichier sql (avec des ; et des / ) et que je donne cela a sqlplus, tout fonctionne.
qqn aurait il une idée??
merci
a+++
Partager