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 Procédural MySQL Discussion :

Créer un trigger


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut Créer un trigger
    Salut,

    Je voudrais créer un trigger mais je rencontre un problème lorsque j'exécute la requête. On dirait que celle ci tourne dans le vide pour ne rien faire au final.

    Si je regarde la liste des processus, je vois que pour ma requête il y a dans la colonne "Commande" le terme SLEEP et ceci pendant une durée de 300 secondes.

    Au terme de ces 300 seconde, le message suivant s'affiche :
    Fatal error: Maximum execution time of 300 seconds exceeded in /home/onlcwww/web/myadminonlc/libraries/import/sql.php on line 99
    Et la requête disparait de la liste des processus.

    Voici ma requête de création du trigger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    delimiter //
    CREATE TRIGGER upd_mail_support AFTER UPDATE ON table1
    FOR EACH ROW
    BEGIN
    	IF (NEW.EmailProprietaire <> OLD.EmailProprietaire) AND (OLD.IdUserSupport IS NOT NULL) THEN
    		UPDATE base2.table2 SET MailUser = NEW.EmailProprietaire WHERE IdUser = OLD.IdUserSupport;
    	END IF;
    END//
    delimiter ;
    Je suis sous MySQL 5.0.32 et phpMyAdmin 3.1.2 sur serveur dédier.

    Quelqu'un peut m'aider ?

  2. #2
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 26
    Par défaut
    Bonjour, as tu trouvé la solution car je suis dans le m^me cas que toi.

    Merci

    edit : apparemment il faut supprimer le delimiter au dessus et en dessous du code, et remplir le champ dans la console.
    Mais j'ai quand même des erreurs avec un code similaire au tient.

  3. #3
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Non, j'ai pas trouvé de solution...

    Qu'est ce que tu appelle la console ? via ssh ?

  4. #4
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 26
    Par défaut
    En fait, tu as le cadre où tu inscrits ta requête et juste en dessous c'est noté delimiteur et bien à cet endroit tu places tes //. Pour ma part j'ai réussi à faire tourner le trigger sous phpmyadmin (en supprimant la ligne du dessus "delimiteur // " et du dessous "delimiteur ;" car moi aussi ça tourné dans le vide ) Par contre, je n'ai pas pu faire le trigger exactement comme je voulais mais j'ai fais un truc plus simple du coup.

Discussions similaires

  1. Créer un trigger global sur une base donnée
    Par helmis dans le forum PL/SQL
    Réponses: 2
    Dernier message: 29/07/2008, 16h16
  2. MySql, accorder droit pour créer des triggers
    Par arnaudco dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 04/02/2008, 21h23
  3. [Oracle9i] Je ne peux pas créer un trigger
    Par sami_c dans le forum PL/SQL
    Réponses: 7
    Dernier message: 05/12/2007, 22h31
  4. [BDE][ORACLE] Créer un trigger depuis un TQuery
    Par Zatoobux dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/09/2007, 16h21
  5. Créer un trigger "before insert" avec SQL Server
    Par bubi dans le forum Développement
    Réponses: 2
    Dernier message: 14/11/2005, 10h12

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