Bonjour,

Voici une procédure stockée qui consiste clairement à insérer un enregistrement dans la table TableCategories !!
Je lance en fait cette procédure à partir de mon programme (en VB) sous ADO avec l'instruction Execute().
Et ben, la fonction vb s'exécute sans exception/erreur mais rien est fait du côté de la base, pas de nouvel enregistrement dans la table TableCategories alors que je pense que cette procédure est OK non ?
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
33
34
35
36
37
38
39
40
CREATE  OR REPLACE procedure NewFieldInCateg
   (v_LastUser varchar2 ,
  v_LastWorkstation varchar2 ,
  v_DS int,
  v_IDCategory varchar2,
  v_Name varchar2 ,
  v_Class varchar2 ,
  v_Type int,
  v_ID varchar2,
  v_IDClass out varchar2,
  v_Result out int )
 
AS
 
 
BEGIN
  v_Result := -1;
 
  SELECT ID into v_IDClass FROM TableClasses WHERE Name = v_Class;
 
  insert into TableCategories (ID, system, Name, IDParentCategory, IDClass, Type, DocumentStatus, DateCreation, DateModification, LastUser, LastWorkstation, CreatorUser, CREATORWORKSTATION)
      values (v_ID, 1, v_Name, v_IDCategory, v_IDClass, v_Type,v_DS,localtimestamp,localtimestamp, v_LastUser, v_LastWorkstation, v_LastUser, v_LastWorkstation);
 
      update TableCategories set "SYSTEM" = 0
	  where id = v_ID;
 
 
 if (v_ID IS NOT NULL) then
		COMMIT ;
		Return;
 END IF;
 
ROLLBACK ;
 
EXCEPTION
   when others then
     dbms_output.put_line(SQLCODE);
 
 
end NewFieldInCateg;
Comment tester cette procédure sous SQL+ par exemple ou d'une autre manière que dans mon application vb