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

SQL Firebird Discussion :

trigger qui ne s' execute pas


Sujet :

SQL Firebird

  1. #1
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2007
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 221
    Points : 185
    Points
    185
    Par défaut trigger qui ne s' execute pas
    Monsieur , bien le bonjour

    je suis sous Firebird 1.53

    La table fonctionne correctement , sauf que quand je fais un insert sur la table produit de coupe
    la date courante ne se met pas dans le champ


    Ma table "Produit de coupe" est definie comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     CREATE TABLE "Produit de coupe"
    (
      "NomID"        	          VarChar(30) Not Null ,
      "Produit de coupe"              VarChar(40) Not Null ,
      "Date de mise en service"       Date Not Null ,
      "Date de mise hors service"     Date ,
      "Clef Excel"                    VarChar(3),
     
       Constraint "SlPrimaryPdC" Primary Key ("NomID" ,"Produit de coupe" , "Date de mise en service") ,
       Constraint "ForeignKeyPdC" Foreign Key ("NomID") References "Machines"  ("NomID")
     ) ;
    Le trigger associé est definie comme cela


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    /* Trigger pour la date*/
     
    SET TERM ^ ;
     
    CREATE TRIGGER "Trig_Date_MES_Pdc " FOR "Produit de coupe"
    ACTIVE BEFORE INSERT POSITION 0
    AS
    begin
       New."Date de mise en service" = CURRENT_DATE  ;
    end
      ^
    COMMIT WORK ^
    SET TERM ;^

    je solisite un peu d' aide

    merci

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 113
    Points
    113
    Par défaut
    A mon avis, l'utilisation d'espaces pour dénommer les méta-données ne doit pas être une bonne solution mais bon...
    Peut-être l'erreur est-elle induite par une erreur dans la syntaxe de la requête ?
    En tout cas, j'ai repris le code et chez moi l'insertion fonctionne bien avec le trigger puisque la date se met bien à jour avec la date du jour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    insert into "Produit de coupe" ("NomID", "Produit de coupe") values (2, 'test') ;

  3. #3
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2007
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 221
    Points : 185
    Points
    185
    Par défaut
    Bonjour

    avec ou sans espace , en majuscule meme combat.
    la solution avec into ne va pas car je dois faire un remplissage du champ lors de l' insertion

    merci

  4. #4
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2007
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 221
    Points : 185
    Points
    185
    Par défaut
    la date se met que lorsque je fais rafraichir les données

  5. #5
    Membre expert

    Homme Profil pro
    Consultant spécialité Firebird
    Inscrit en
    Mai 2002
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 342
    Points : 3 715
    Points
    3 715
    Par défaut
    Citation Envoyé par Fred 57220
    la date se met que lorsque je fais rafraichir les données
    normal

  6. #6
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 80
    Points : 199
    Points
    199
    Par défaut
    Je me permets une petite insertion dans votre discussion...

    A propos de date du jour, vaut-il mieux utiliser CURRENT_DATE ou TODAY ?

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 113
    Points
    113
    Par défaut
    Si tu veux être conforme à la norme SQL, je te conseille fortement d'utiliser CURRENT_DATE car elle est la plus implémentée dans le petit monde fermé des SGBD mais au bout du compte
    CURRENT_DATE ou TODAY
    Citation Envoyé par Fred 57220
    même combat

  8. #8
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 80
    Points : 199
    Points
    199
    Par défaut
    OK ! Bon à savoir quand même...

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

Discussions similaires

  1. Trigger qui ne s'execute pas comme prévu
    Par bringer dans le forum SQLite
    Réponses: 2
    Dernier message: 16/11/2009, 21h54
  2. des fichiers PERL qui ne s'executent pas
    Par steinfield dans le forum Langage
    Réponses: 2
    Dernier message: 04/05/2006, 14h52
  3. [POO] Methode de classe qui ne s'exécute pas
    Par gregal dans le forum Langage
    Réponses: 2
    Dernier message: 11/04/2006, 11h01
  4. [FLASH 8] Un trace qui ne s'execute pas ?
    Par memess dans le forum Flash
    Réponses: 13
    Dernier message: 30/11/2005, 15h46
  5. [trigger] ... qui ne se déclenche pas
    Par bozo dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 14/01/2004, 11h31

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