Probleme de base en PL/SQL

Vincent B -  
 soos -
Je débute en pl/sql. Mon programme est simple et tout à fait identique à celui trouvé dans un livre... cependant oracle semble vouloir à tout prix une parenthèse... quelqu'un sait pourquoi ?
Merci :-)

SQL> DECLARE
2 i int:=1;
3 max CONSTANT int:=906;
4 BEGIN
5 while (i<max) LOOP
6 insert into BP_MOL_3D_BIS (cd_id,cd_structure) select cd_id,cd_structure fr
om BP_MOL_3D where BP_MOL_3D.cd_id=i;
7 i := i+1;
8 end LOOP;
9 commit;
10 end;
11 /
while (i<max) LOOP
*
ERREUR Ó la ligne 5 :
ORA-06550: Ligne 5, colonne 13 :
PLS-00103: Symbole ")" rencontre a la place d'un des symboles suivants :
(

ps : j'ai aussi tenté: while i<max LOOP
le message d'erreur reste le meme

3 réponses

  1. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    Salut, change le nom de ta constante Max en MonMaxAMoiIlMeParleDeVoituresEtQuandJeLisDansCesYeux...enfin, pas forcement celui la, mais autre chose que la fonction max ...Et du coup, une fonction appelant un ou plusieurs parametres, il veut a juste titre une parenthses ouvrante derriere...

    Bonne continuation

    ö,ö
    \_/
    0
    1. VincentB
       
      J'ai changé max en maxu (MonMaxAMoiIlMeParleDeVoituresEtQuandJeLisDansCesYeux me plaisait bien mais bon, j'avais la flemme)
      pis ça a rien changé :-(

      une autre idée ?
      merci !
      0
  2. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    La meme erreur?
    Ca semble se compliquer...essaye un truc genre MonMax quand meme, des fois que maxu soit quelque chose, mais ca m'etonnerait...Mais si c'est pas ca, j'y perd mon latin et mon PL/SQL avec...
    Sinon, il y a aussi une boucle FOR qui devrait marcher la...

    Bonne chance

    ö,ö
    \_/
    0
  3. soos
     
    salut vincent,

    je pense ke ton commit doit venir après le end de tarequête pl/sql. essaie voir. sinon, je ne vois pas .

    soos "piquant".
    0