sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

phpmyadmin mysql trigger syntaks fejl

Der er mange fejl at rette.

  1. Ingen ende på udsagn.
  2. Ingen rækkefølge af syntaks fulgt.
  3. Deklaration af variabler er ikke korrekt.
  4. Valg i variabler fra en kolonne er ikke korrekt.
  5. Styrebaserede ure understøttes ikke.
  6. Er tabel inserted kun indeholde én række? Ellers skal du bruge en where klausul eller limit .
  7. osv.

Du må hellere arbejde mere for at lære.
Se venligst Triggersyntaks og eksempler for bedre forståelse.

Skift din kode som følger, og den kan arbejde, hvis alt er godt på dine databaseobjekter.

drop trigger if exists after_jeu_insert;

delimiter //

CREATE TRIGGER after_jeu_insert after insert ON jeu for each row
BEGIN
    DECLARE _game_id int;
    DECLARE _old_turn int;
    DECLARE _new_turn int;

    -- following line may not require limit clause
    -- if used proper where condition.
    SELECT idpartie into _game_id FROM INSERTED limit 1; 

    SELECT tour into _old_turn FROM partie WHERE idpartie = _game_id;

    IF _old_turn IS NULL then
        SET _new_turn = 1;
    ELSIF _old_turn = 1 then
        SET _new_turn = 2;
    ELSE
        SET _new_turn = 1;
    END IF;

    UPDATE partie 
       SET tour = _new_turn
         , derniercoup = NOW()
     WHERE idpartie = _game_id;
END;
//

delimiter;



  1. phpMyAdmin i Xampp virker ikke

  2. hvordan ændres lagermotor for databasen i phpmyadmin?

  3. Hvordan fjerner jeg dublerede rækker i MySQL ved hjælp af PHPMyAdmin?

  4. MySQL-fejl #1133 - Kan ikke finde nogen matchende række i brugertabellen