Bonjour,
dans mon programme Java j'essaie d'exécuter un SQL avec un PreparedStatement:
Si jexecute le SQL direckt a travert java, j'obtiens toujours lerreur:
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
27
28 SELECT DISTINCT A0.REV_ID,A0._ID,A0.VALID_FROM as ojb_col_3 FROM QUESTIONNAIRE_REV A0 INNER JOIN QUESTIONNAIRE A1 ON A0.QU_ID=A1.QU_ID LEFT OUTER JOIN QUESTIONNAIRE A2 ON A1.QU_ID=A2.QU_ID LEFT OUTER JOIN TMP_USER_ORG_UNIT J0 ON A0.ADM_ORG_UNIT_ID=J0.ORG_UNIT_ID AND ( (J0.USER_ID = 6789) AND J0.OP_ID = 446524671 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J1 ON A0.ADM_ORG_UNIT_ID=J1.ORG_UNIT_ID AND ( (J1.USER_ID = 6789) AND J1.OP_ID = 446524671 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J2 ON A0.ADM_ORG_UNIT_ID=J2.ORG_UNIT_ID AND ( (J2.USER_ID = 6789) AND J2.OP_ID = 376546535 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J3 ON A0.ADM_ORG_UNIT_ID=J3.ORG_UNIT_ID AND ( (J3.USER_ID = 6789) AND J3.OP_ID = 376546535 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J4 ON A0.ADM_ORG_UNIT_ID=J4.ORG_UNIT_ID AND ( (J4.USER_ID = 6789) AND J4.OP_ID = 1491988976 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J5 ON A0.ADM_ORG_UNIT_ID=J5.ORG_UNIT_ID AND ( (J5.USER_ID = 6789) AND J5.OP_ID = 1491988976 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J6 ON A0.ADM_ORG_UNIT_ID=J6.ORG_UNIT_ID AND ( (J6.USER_ID = 6789) AND J6.OP_ID = -628128861 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J7 ON A0.ADM_ORG_UNIT_ID=J7.ORG_UNIT_ID AND ( (J7.USER_ID = 6789) AND J7.OP_ID = -628128861 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J8 ON A0.ADM_ORG_UNIT_ID=J8.ORG_UNIT_ID AND ( (J8.USER_ID = 6789) AND J8.OP_ID = 789957100 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J9 ON A0.ADM_ORG_UNIT_ID=J9.ORG_UNIT_ID AND ( (J9.USER_ID = 6789) AND J9.OP_ID = 789957100 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J10 ON A0.ADM_ORG_UNIT_ID=J10.ORG_UNIT_ID AND ( (J10.USER_ID = 6789) AND J10.OP_ID = -785639575 ) LEFT OUTER JOIN TMP_USER_ORG_UNIT J11 ON A0.ADM_ORG_UNIT_ID=J11.ORG_UNIT_ID AND ( (J1.USER_ID = 6789) AND J1.OP_ID = -7856395751 ) WHERE ( A0.STATUS = 10 OR (A0.STATUS = 20) OR (A0.STATUS = 50) OR (A0.STATUS = 100) OR (A0.STATUS = 200) OR (A0.STATUS = 300)) AND (( ( A0.VALID_FROM <= 1383951599999) AND (A0.VALID_TO > 1383951599999 OR (A0.VALID_TO IS NULL ))) AND (( ( A1.ASSIGNED_EDIT_USER_ID = 6789) AND (A0.STATUS = 20 OR (A0.STATUS = 50) OR (A0.STATUS = 200)) OR (( A1.ASSIGNED_CONFIRM_USER_ID = 6789) AND (A0.STATUS = 100)) OR (( ( (J0.USER_ID = 6789) AND J0.OP_ID = 446524671 OR (((J1.USER_ID = 6789) AND J1.OP_ID = 446524671) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 300) OR (( (J2.USER_ID = 6789) AND J2.OP_ID = 376546535 OR (((J3.USER_ID = 6789) AND J3.OP_ID = 376546535) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 50 OR (A0.STATUS = 20) OR (A0.STATUS = 200))) OR (( (J4.USER_ID = 6789) AND J4.OP_ID = 1491988976 OR (((J5.USER_ID = 6789) AND J5.OP_ID = 1491988976) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 50 OR (A0.STATUS = 100) OR (A0.STATUS = 20) OR (A0.STATUS = 200) OR (A0.STATUS = 10))) OR (( (J6.USER_ID = 6789) AND J6.OP_ID = -628128861 OR (((J7.USER_ID = 6789) AND J7.OP_ID = -628128861) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 50 OR (A0.STATUS = 100) OR (A0.STATUS = 20) OR (A0.STATUS = 200) OR (A0.STATUS = 10))) OR (( (J8.USER_ID = 6789) AND J8.OP_ID = 789957100 OR (((J9.USER_ID = 6789) AND J9.OP_ID = 789957100) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 300)) OR (( (J10.USER_ID = 6789) AND J10.OP_ID = -785639575 OR (((J11.USER_ID = 6789) AND J11.OP_ID = -785639575) AND A2._QA_CATEGORY_ID = 15)) AND (A0.STATUS = 100))) AND (A2.ADM_USER_GROUP_ID IN (SELECT B0.ADM_USER_GROUP_ID FROM ADM_USER_GROUP B0 INNER JOIN ADM_USER_GROUP_USER B1 ON B0.ADM_USER_GROUP_ID=B1.ADM_USER_GROUP_ID WHERE B1.ADM_USER_ID = 6789) OR (A2.ADM_USER_GROUP_ID IS NULL )))) AND (A0.ADM_USER_ID <> 6789 OR (A0.STATUS <> 100)))) ORDER BY 3
Parcontre si jexecute le meme SQL dierect sur la console Oracle, jai aucune erreurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2ORA-00907: missing right parenthesis
Je ne comprends pas bien de quoi il sagit, merci pour vos reponces.
Soulman
Partager