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

Bases de données Delphi Discussion :

Delphi Les bind variables Oracle


Sujet :

Bases de données Delphi

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2003
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2003
    Messages : 166
    Points : 206
    Points
    206
    Par défaut Delphi Les bind variables Oracle
    Bonjour

    y a t'il moyen d'utiliser les bind variable oracle via les composant tquery ?
    car si on utilise la syntaxe ':variable' les composants l’interprètent comme un paramètre et donc remplace ':variable' par la valeur fournie

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 658
    Points : 3 599
    Points
    3 599
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    C'est possible en utilisant les paramètres.
    Admettons que tu disposes d'un composant TFDQuery sur la fiche. Tu peux renseigner ta requête dans la propriété SQL (qui contient par exemple la variable :var1) du composant. Ensuite, dans la propriété Params, tu ajoutes un paramètre var1 du type souhaité (exemple string).

    Dans le code, au moment où tu souhaites exécuter la requête, tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    monQuery.ParamByName('var1').asString := 'laValeur';
    monQuery.Open;
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #3
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 857
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 857
    Points : 11 291
    Points
    11 291
    Billets dans le blog
    6
    Par défaut
    Pour conserver l'avantage en temps d'exécution, le Query demande-t-il au SGBD de préparer la requête, pour ensuite la faire tourner à chaque fois en indiquant juste les paramètres ? Ou bien renvoie-t-il un SQL complet à chaque demande ? Peut-être y a-t-il une méthode Prepare à cet effet ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

Discussions similaires

  1. Les bind variable et la performance
    Par beggasm dans le forum Débuter
    Réponses: 5
    Dernier message: 19/04/2012, 17h59
  2. [SQL DYNAMIQUE] lister les bind variables
    Par PpPool dans le forum PL/SQL
    Réponses: 2
    Dernier message: 22/01/2009, 09h35
  3. [PHP / Oracle 9] Bind variables
    Par didier_s dans le forum Oracle
    Réponses: 3
    Dernier message: 23/06/2006, 17h00
  4. [Oracle 9i] Bind variables et sql dynamique
    Par jld_33 dans le forum Oracle
    Réponses: 17
    Dernier message: 09/06/2006, 11h49

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