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 :

Creation d'un trigger oracle avec un TADOQuery


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 211
    Points : 85
    Points
    85
    Par défaut Creation d'un trigger oracle avec un TADOQuery
    Bonjour,

    Je veux créer un trigger oracle avec un TADOQuery.

    Sauf que la syntaxe de création d'un trigger en Oracle impose un :new et delphi le considère comme un paramètres de la requête. Du coup cela plante.

    Comment puis-je lui faire exécuter la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE OR REPLACE TRIGGER "CLIENT"."DONNEE_FCTG_BI" BEFORE INSERT ON DONNEE
    FOR EACH ROW
     WHEN (new.ID_DONNEE IS NULL) BEGIN
      SELECT DONNEE_FCSEQ.NEXTVAL INTO :new.ID_DONNEE FROM dual;
    END;

  2. #2
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 173
    Points
    4 173
    Par défaut
    Définit la propriété ParamCheck du TADOQuery à False.

  3. #3
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    as tu essayé de désactiver le Paramcheck (à False) du TAdoQuery avant de l'exécuter ?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 211
    Points : 85
    Points
    85
    Par défaut
    Ok mon collègue a trouvé.

    Il faut non seulement faire un paramcheck à false.
    mais aussi un prepared à true :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    req.ParamCheck := false;
    req.Prepared := true;
    Merci pour votre aide.

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

Discussions similaires

  1. [JDBC]Probleme avec trigger Oracle
    Par aurel89 dans le forum JDBC
    Réponses: 2
    Dernier message: 02/08/2005, 12h53
  2. [INNO SETUP][ORACLE] Installer le client Oracle avec Inno
    Par AnnSo dans le forum Bases de données
    Réponses: 11
    Dernier message: 19/08/2004, 17h21
  3. Generer du xml via SQL(oracle) avec de l'asp
    Par jpg dans le forum XQUERY/SGBD
    Réponses: 6
    Dernier message: 03/08/2004, 13h36
  4. question general sur triggers (liaison avec VB)
    Par DaxTaz dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/07/2004, 16h57
  5. listage de triggers/sequences avec sql plus
    Par stross dans le forum Oracle
    Réponses: 52
    Dernier message: 20/04/2004, 16h41

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