|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : juin 2006 Messages : 62 ![]() |
bonjour,
je connais Firebird depuis trois jours et je suis bloquer par un probleme stupide (enfin je pense!). Je dois creer un script qui genere le schema de la base de donnees. La base de donnees est donc Firebird et le GUI SQL Manager Lite 2005. Pas de soucis avec des CREATE TABLE, les INDEX etc... par contre les TRIGGER ne passent pas! J'utilise SQL Manager 2005 Lite comme GUI. Je genere le code suivant a partir de l'editeur de TRIGGER : CREATE TRIGGER CONF_TRIGGER FOR TABLE ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.MonID IS NULL) THEN NEW.MonID = GEN_ID (conf_generator,1); END; ou conf_generator est un generateur. * Quand je copie cette requete dans le fichier qui contient toutes les requetes pour generer le schema de la base de donnees, et que je l'ouvre dans le SQL Editor, FireBird bloque sur le TRIGGER. * Quand je met 2 triggers dans le SQL editor et que je clique sur Execute Query , il bloque sur le 2e. * Quans j'en met un seul et que je clique sur "Explain Query" , j'obtiens le message d'erreur suivant : Invalid token. Dynamic SQL Error. SQL error code = -104. Unexpected end of command. * Dans la meme situation que le point precedent, mais avec le bouton Execute Query, l'action se deroule correctement voila, j'ai essaye d'etre le plus precis possible. Desole pour les accents, je n'en ai pas sur mon clavier. Merci, Matthias |
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
voilà :
Code :
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
||
|
00
|
|
|
#3 | |||
|
Nouveau Membre du Club
![]() Inscription : juin 2006 Messages : 62 ![]() |
Merci Phillippe
mon nouveau code est donc : Code :
Citation:
SET TERM ^^; SET TERM ^; SET TERM $$; SET TERM !!; A quoi correspond ces differences? Est-ce que c'est lie au dialecte utilise? J'ai choisi les dialectes 3 parcequ'il comprend le type BIGINT que j'utilise a l'origine dans la bdd MySQL que je suis en train de migrer vers FireBird. |
|||
|
|
00
|
|
|
#4 | ||
|
Nouveau Membre du Club
![]() Inscription : juin 2006 Messages : 62 ![]() |
j'ai remplace les ^^ que Philipe m'avait conseille par des !!
La requete devient donc : Code :
|
||
|
|
00
|
|
|
#5 | |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
Citation:
SET TERM permet de définir le ou les caractères qui indique au parseur que la commande est terminée, complète
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com