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éation de triggers sous PHPMyAdmin


Sujet :

SQL Procédural MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Création de triggers sous PHPMyAdmin
    Bonjour.

    Je me retrouve avec un petit souci pour créer des triggers pour MySQL.

    J'ai un message d'erreur qui me dit que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FLOAT(9,3)' at line 4
    Malheureusement, ce code passe très bien sur un serveur personel avec la même version de MySQL.

    Voici le trigger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    CREATE TRIGGER `Alignement_Service` AFTER UPDATE ON `Personne`
      FOR EACH ROW
    BEGIN
      DECLARE i FLOAT(9,3);
     
      SELECT Service.USED_TIME
      INTO   i
      FROM   Service
      WHERE  Service.ID = NEW.SERVICE_ID;
     
      SET i = i + NEW.USED_TIME - OLD.USED_TIME;
     
      IF NEW.USED_TIME <> OLD.USED_TIME THEN
        UPDATE Service
        SET    Service.USED_TIME = i
        WHERE Service.ID = NEW.SERVICE_ID;
      END IF;
     
    END;
    Si quelqu'un avait une idée, ce serait sympa.

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 282
    Points : 11 740
    Points
    11 740
    Par défaut
    C'est normal, phpMyAdmin n'accepte pas les BEGIN/END, à cause des points-virgules multiples. Il faut que tu passes par exemple par l'API PHP.
    Antoun
    Expert Essbase, BO, SQL

    La bible d'Essbase, 2ème édition

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Si je comprend bien, je dois utiliser un script php qui lancera le code SQL pour créer le trigger ?
    Ok, je vais tester ca.

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

Discussions similaires

  1. Trigger sous PHPMyAdmin
    Par beber12 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 29/05/2014, 23h03
  2. Création de trigger sous SQL Server 2008
    Par lessoy dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 22/04/2013, 12h49
  3. Réponses: 1
    Dernier message: 29/06/2011, 18h00
  4. création de trigger sous oracle 9i
    Par bkina dans le forum PL/SQL
    Réponses: 2
    Dernier message: 12/11/2007, 13h58
  5. Problème de création de procédure sous PHPMyAdmin
    Par Braer dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 09/11/2007, 16h05

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