IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

Parametrer une requete SQL


Sujet :

PostgreSQL

  1. #1
    Membre habitué Avatar de Kurdran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 122
    Points : 140
    Points
    140
    Par défaut Parametrer une requete SQL
    Bonsoir,

    Voila j'aimerai avoir des requetes génériques, c'est à dire que lors de l'exécution de la requete, le moteur me demande la valeur de certains paramètres.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT
      *
    FROM
      ma_table
    WHERE
      champ = mon_parametre;
    J'utilise PGAdmin ou EMSPostGre

    PS : si ca marche avec un autre logiciel dites le quand meme on ne sait jamais.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358
    Par défaut
    Citation Envoyé par Kurdran
    Bonsoir,

    Voila j'aimerai avoir des requetes génériques, c'est à dire que lors de l'exécution de la requete, le moteur me demande la valeur de certains paramètres.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT
      *
    FROM
      ma_table
    WHERE
      champ = mon_parametre;
    J'utilise PGAdmin ou EMSPostGre

    PS : si ca marche avec un autre logiciel dites le quand meme on ne sait jamais.
    http://www.postgresql.org/docs/8.1/i...l-prepare.html

  3. #3
    Membre habitué Avatar de Kurdran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 122
    Points : 140
    Points
    140
    Par défaut
    Bonjours,

    Je vous remercie pour cette réponse.
    Mais l'appel PREPARE permet-il de modifier facilement la requete (pour correction de bug) et surtout permet-il de faire plusieurs appels à des requetes. La lecture de la documentation me laisse penser que la réponse à ces deux interrogations est "non".

    En fait, je recherche cette fonctionnalité pour faire des redressements de données dans une base de donnnées. Ces redressements, bien que normalement trés rare, se produisent quand même de temps en temps. Et donc je voulais surtout un outil permettant de stocker ces requêtes de redessement, de les visualiser, de les modifier au cas ou et de les lancer.

    Cordialement.

  4. #4
    Membre habitué Avatar de Kurdran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 122
    Points : 140
    Points
    140
    Par défaut
    Bonjour,

    Le soucis avec PREPARE c'est que c'est volatile, ces requetes paramétrées ne reste pas si l'on ferme la console.

    Y aurait-il un moyen de persistence?

  5. #5
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358
    Par défaut
    Citation Envoyé par Kurdran
    Bonjour,

    Le soucis avec PREPARE c'est que c'est volatile, ces requetes paramétrées ne reste pas si l'on ferme la console.

    Y aurait-il un moyen de persistence?
    en code source uniquement…
    vous pouvez les stocker dans une table et les compilez lors de la connexion…
    par exemple en créant une fonction plslq que vous appelerez au début de votre session et qui parcourera la table et prépara les statements…

  6. #6
    Membre habitué Avatar de Kurdran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 122
    Points : 140
    Points
    140
    Par défaut
    Bonjour,

    C'est une bonne idée ca, mais cela ne risque pas de ralentir le chargement de la console si une centaine de PREPARE sont exécutés? Surtout que ces requetes paramétrées ne seront utilisées que dans certains cas assez rare.

  7. #7
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358
    Par défaut
    Citation Envoyé par Kurdran
    Bonjour,

    C'est une bonne idée ca, mais cela ne risque pas de ralentir le chargement de la console si une centaine de PREPARE sont exécutés? Surtout que ces requetes paramétrées ne seront utilisées que dans certains cas assez rare.
    c'est évidemment le code qui détecte que le traitement spécial doit s'effectuer qui doit être optimisé en fonction de ce genre de critères…

    le chargement des requêtes préparées peut être au début du traitement "spécial"…

  8. #8
    Membre habitué Avatar de Kurdran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 122
    Points : 140
    Points
    140
    Par défaut
    Bonsoir,

    Je comprends ce que vous m'avez proposé, je verai ce que je peux faire pour ca.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. passer en parametre le nom d'un champ d'une requete sql en vba
    Par alexkickstand dans le forum VBA Access
    Réponses: 9
    Dernier message: 12/02/2009, 15h59
  2. Un recordSet en parametre dans une requete SQL
    Par skillipo dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 06/12/2007, 16h59
  3. Réponses: 11
    Dernier message: 09/08/2007, 14h27
  4. parametre d une requete SQL
    Par Nadaa dans le forum ASP.NET
    Réponses: 3
    Dernier message: 31/01/2007, 16h00
  5. Mettre a jour les Parametres dans une requete SQL
    Par Tartar Ukid dans le forum C++Builder
    Réponses: 7
    Dernier message: 31/03/2004, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo