Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/06/2007, 16h06   #1
Membre du Club
 
Inscription : avril 2004
Messages : 179
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : avril 2004
Messages : 179
Points : 58
Points : 58
Par défaut Modification dynamique d'une procédure stockée

bonjour,

je développe un soft (c++ builder) basé sur une bdd firebird.
la mise à jour que je m'apprête à faire implique une mise à jour de la base.
pour la structure des tables, pas de problème.
par contre, je ne vois pas comment faire pour modifier le contenu d'une procédure stockée ?

un peu d'aide serait la bienvenue.

engi
engi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2007, 21h31   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
Alter Procedure
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 15h41   #3
Membre du Club
 
Inscription : avril 2004
Messages : 179
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : avril 2004
Messages : 179
Points : 58
Points : 58
bonjour,

j'avais bien pensé au ALTER.
à partir d'IBExpert, voilà la clause SQL pour modifier ma procédure :

Citation:
SET TERM ^ ;

ALTER PROCEDURE NEW_PROCEDURE (NOM_TABLE VARCHAR(30)) RETURNS (CLE_UNIQUE INTEGER) AS DECLARE VARIABLE I INTEGER BEGIN
I=-1;

IF ( UPPER(NOM_TABLE) = 'ACCES' ) THEN
I = GEN_ID("GEN_ACCES_ID", 1);
ELSE IF ( UPPER(NOM_TABLE) = 'FONCTIONS' ) THEN
I = GEN_ID("GEN_FONCTIONS_ID", 1);

CLE_UNIQUE = I;
SUSPEND;
END
^

SET TERM ; ^
Comment puis lancer l'exécution d'une telle requête dans mon appli C++ ?
Si je l'enregistre telle quelle dans le composant requête servant à exécuter mes cdes SQL, l'exécution plante parce que la syntaxe est incorrecte.
engi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 16h22   #4
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 629
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 629
Points : 4 531
Points : 4 531
normal c'est un script . certains composants permettent l'execution des scripts
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 16h35   #5
Membre du Club
 
Inscription : avril 2004
Messages : 179
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : avril 2004
Messages : 179
Points : 58
Points : 58
merci de ta réponse.
tu parles de composants existants pour exécuter ce genre de scripts. as tu des noms ?
dans le cas contraire, existe-t-il une alternative pour mettre à jour dynamiquement le contenu d'une procédure stockée (quitte à la supprimer et à la recréer) ?

merci pour l'aide
engi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 18h00   #6
Membre du Club
 
Inscription : avril 2004
Messages : 179
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : avril 2004
Messages : 179
Points : 58
Points : 58
après quelques recherches, j'ai effectivement trouvé des composants (pas encore testés) tels que pFIBScript ou TJvUIBScript.

merci encore pour l'aide apportée.

a+
engi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h31.


 
 
 
 
Partenaires

Hébergement Web