bonjour,

lorsque j'exécute cette procédure ma table compta est vide.... j ai trouvé l'erreur (oracle ou la variable n'aiment pas cette ligne NumPieceEspCM := '00' || '52P' || '1'; il suffit de changer la lettre P par un nombre n'importe le quel et alors ma table compta a bien une ligne)

Pouvez vous m'expliquer pourquoi???
Comment faire pour utiliser NumPieceEspCM decrit ici en haut?


Merci d'avance
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
29
30
31
32
********************************************
 
CREATE OR REPLACE Procedure COMPTA_exemple
 IS
 
    s_sql    VARCHAR2(1000);
 
    NumDossier   varchar2(4) :='0103';
    NumPieceEspCM   VARCHAR2(9);
    NumOrdre1		    VARCHAR2(3):='001';
 
BEGIN
 
NumPieceEspCM 	:= '00' || '52P' || '1';
 
s_sql := 'DROP TABLE COMPTA';
EXECUTE IMMEDIATE s_sql;
 
 
 
s_sql := 'CREATE TABLE COMPTA (  NumDossier		CHAR(4), NumPieceComptable	CHAR(9), NumOrdre		CHAR(3))';
EXECUTE IMMEDIATE s_sql;
 
 
s_sql :='INSERT INTO  COMPTA  VALUES  (' || NumDossier ||','|| NumPieceEspCM ||','||NumOrdre1 || ')';  
 EXECUTE IMMEDIATE s_sql;                
 
 EXCEPTION
   -- ORA-00942: table or view does not exist
   WHEN OTHERS THEN
       NULL;
END COMPTA_exemple;