executer un trigger avec java
bonsoir,
comment créer un trigger et l'executer avec java.
est ce que kom les requètes est ce que autre chose.
j'ai créer mon trigger
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| String req="create or replace trigger mytrigger" +
" after insert or update on ATTRIBUTPERSONNALISATION"+
"for each row"+
"declare " +
"x VARCHAR2(254); " +
"y VARCHAR2(254);"+
"begin"+
"select intitule" +
" into x " +
"from ATTRIBUTPERSONNALISATION " +
"where intitule = :new.intitule;"+
"select intitule into y from PRODSERVSOL where intitule = :new.intitule;"+
"if x!=y then " +
"raise_Application_error(-20330, 'multiplicite violee');"+
"end if;"+
"end mytrigger;";
stmt1.executeQuery(req); |
mais il m'affiche le message d'erreur suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| java.sql.SQLException: ORA-04079: spécification de déclencheur erronée
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:590)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1973)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2191)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2064)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2989)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:653)
at package1.coherence.main(coherence.java:48) |