Bonjour à tous,
Je suis débutant en Oracle et travaille sur la version 8i Enterprise Edition Release 8.1.6.0.0.
J'ai un soucis sur un morceau de code dans une procédure.
Chose étrange c'est qu'il ne pose aucun problème en dehors de la procédure.
Le voilà :
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 INSERT INTO EDB_OPER_STATUT (EOS, NUM_EDB, OPER, ATTACHMENT, OWNER_ID, NUM_STAT_PROCESS, DATE_H, COMMENT_STAT ) SELECT SEQ_EDB_OPER_STATUT.NEXTVAL, a.NUM_EDB, a.OPER, a.ATTACHMENT, 18, 6, sysdate, 'PSD AUTOMATIC STATUT' FROM EDB_OPER a, DUAL WHERE (NUM_EDB, OPER, ATTACHMENT) IN (SELECT NUM_EDB, OPER, ATTACHMENT FROM EDB_OPER_STATUT) AND (NUM_EDB, OPER, ATTACHMENT, 6) NOT IN (SELECT NUM_EDB, OPER, ATTACHMENT, NUM_STAT_PROCESS FROM EDB_OPER_STATUT) AND (SELECT COUNT(*) FROM EDB_LOT WHERE NUM_EDB = a.NUM_EDB) > 0 AND (SELECT COUNT(*) FROM EDB_LOT WHERE NUM_EDB = a.NUM_EDB AND LOT IN (SELECT LOT FROM LOT WHERE STEP < 2)) = (SELECT COUNT(*) FROM EDB_LOT WHERE NUM_EDB = a.NUM_EDB);
L'erreur est la suivante :
Et le problème semble se situé sur les SELECT COUNT(*), sans raison aucune ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part [275:8] PLS-00103: Encountered the symbol "SELECT" when expecting one of the following: ( - + mod not null others <an identifier> <a double-quoted delimited-identifier> <a bind variable> avg count current exists max min prior sql stddev sum variance execute forall time timestamp interval date <a string literal with character set specification> <a number> <a single-quoted SQL string>
Merci de m'éclairer car je viens de passer 2h à chercher, et impossible de trouver ...
Partager