into dans stored procedures
salut !!!
je vous prie de regarder ce code
Code:
1 2 3 4 5 6 7 8 9 10
|
create procedure enregistrer( mnt_d float,
exo integer
)
as
declare variable mat char (15);
begin
for select matricule from Employe into :mat Do
insert into Dotation(:mat, :mnt_d,:exo);
end; |
quand je compile j'obtiens
Dynamic SQL Error
SQL error code = -104
token unknown -char 6 line 49
?.
le nombre de ligne total de ma procedure est 11 et non 49.
c'est ainsi dans tous mes procedures où il y a le into.
J'utilise IBAccess.
je ne vois pas où se trouve l'erreur.
into dans stored procedures
into dans stored procedures
je ne peux pas le jeter au stade où se trouve mon projet. IBExpert est payant.
J'ai besoin d'autres alternatives pour pouvoir m'en sortir.:)
into dans stored procedures
j'ai fais ce que makowski m'a suggeré. Nothing. J'ai changé de procedure juste pour voir avec isql
Code:
1 2 3 4 5 6 7 8
|
create procedure afficher
As
begin
select *
from Employe
where matricule is not null;
end |
devinez quoi: il affiche caractère unknown ; cad il reconnait pas le point virgule; 8O
si j'enlève le ; il met caractère unknown end,il ne reconnait pas le end.8O
il y a une erreur dans ma procedure(lexical ou syntaxique).Pourquoi ce comportement de Firebird? est il lié a un bug? où se trouve mon erreur? Que savez vous sur les procedures stockées dans FB? :D
into dans stored procedures
Troisième jour que je suis dessus mais je lâche pas :D.
Je vais essayer IBExpert version personnelle. IBAccess ne reconnait même pas le mot clé TERM. Je peux pas donc utiliser SET TERM. Bizard hein ?:D
Ce qui est encore etrange c'est qu'avec ISQL le SET TERM ne pose pas de problème mais dès qu'une clause into apparait,paff!!!! error code = -104 token unknown line 1 char 5 TERM.
Mais on m'a dit que souvent avec FB il faut sauvegarder et restaurer la BD pour reinitialiser les compteurs. Quels compteurs? je sais pas. Ma BD est quand même 'gigantesque'
25 tables
10 vues
12 trigger
6 generateurs
quelques exceptions
15 procedures stockées prevus mais pour l'instant je bloque dessus à cause du INTO. Est ce que la taille de ma BD peut être à l'origine? Si je fais une PS Avec ISQL ou IBAccess sans le INTO ça passe. Mais .....brrrr!!!!!!!!!
Merci de me dire ce que vous en pensez.
into dans stored procedures
Eureka !!!!!!
C'est IBAccess le problème pas FireBird. C'est en consultant les PS de la BD
exemple EMPLOYEE.FDB que j'ai vu le hic. Si j'ouvre directement la fenêtre d'edition des PS j'arrive à faire toutes les modifications que je veux par contre si j'ouvre le "SQL windows" de IBAccess crash !!!!!! Donc j'ai mis en cause la fiabilité de ce cette ....fenêtre. Chose salvateur. C'etait pas le INTO le problème mais les deux points qui le suivent, IBAccess c'est à dire "SQL windows" ne les connait pas ainsi que le TERM.
Pour creer un PS avec IBAccess lancer la fenêtre "SQL Windows" (le bouton de lancement apparait dès que vous vous connectez à la BD) ensuite tapez votre PS sans le body(vous pouvez tapez le body s'il n'y a pas le INTO) après selectionné Stored Procedures et cliquez sur nouveau,tapez alors le body avec le INTO et autant de deux points : que vous le voulez.
Si vous selectionnez Stored procedures et cliquez sur Nouveau vous n'aurez que la possibilité de creer une PS avec un seul argument.Que feriez vous si vous avez plusieurs arguments?
IBAccess est truffé de Bug ou c'est moi qui l'ai mal installé. Mefiez de IBAccess.
En cherchant à resoudre mon problème j'ai compris beaucoup de chose.:D
A mackowski
A TryExcept
A Evarisnea
Je dis :merci: