|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Bonjour,
J'ai une application c# qui charge un fichier sql pour mettre à jour ma base de données firebird embeded. Je voudrais savoir comment tester l'existence d'un champs en sql avant de lancer un alter table. Si MonChamps existe alors je fais rien sinon j'execute l'alter table... pour créer mon champs. Je ne peux pas le faire en C# mais je dois le faire directement dans mon script sql. Une idée? Ludo |
|
|
00
|
|
|
#2 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Cette requete me retourne 'COMMENTAIRE' si le champs existe.
Code :
|
||
|
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Salut,
J'essai de me faire une procédure pour vérifier l'existence d'un champs avant de lancer un alter mais je ne m'en sors pas: Mon code: Code :
Ludo |
||
|
|
00
|
|
|
#4 | ||
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 760 ![]() |
Salut
Tu peux utiliser IF EXISTS comme ceci: Code :
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
||
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Salut,
Merci pour ton aide mais le script ne fonctionne pas! Batch execution aborted J'obtiens un dynamic sql error error -104 Error code: 335544851 Il a l'air de se planter sur ou après le exist=1 J'utilise la version 2.0.X de firebird en mode embeded |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
ben ça, en utilisant un mot réservé comme nom de variable, rien d'étonnant
ceci dit je ne vois pas bien l'interet de la manoeuvre si un champ existe déjà, la création échouera et basta rien de bien grave
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Salut,
J'ai changé Exist par FieldExist mais pas mieux. La manoeuvre consiste à passer un script sql pour mettre à jour une bdd. Mon problème est que je ne peux pas identifier l'état de la base lors du téléchargement du script. J'essai donc de détecter la présence d'un champs avant de lancer sa création. En cas de plantage, la suite du script n'est pas exécuter... Je sais pas pourquoi mais il "coupe" le script après "=1;" Ludo |
|
|
00
|
|
|
#8 |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 760 ![]() |
Beuh, où ça un mot clé réservé ? Exist ?
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
00
|
|
|
#9 | ||
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
en plus elle marche très bien cette procédure
Code :
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
||
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2004 Messages : 70 ![]() |
Oui effectivement avec un set term ca marche!
Merci à vous 2! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com