Ergebnis 1 bis 10 von 10

Thema: Trigger Problem

  1. #1
    Unregistriert
    Gast

    Standard Trigger Problem

    moin

    ich hab ein problem mit meinem trigger
    ich benutz debian und mysql version 5.1.66
    wenn ich diesen trigger einbauen will bekomm ich immer die meldung:

    MySQL meldet: Dokumentation
    #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 '$$' at line 21

    DROP TRIGGER IF EXISTS `InsUser`;
    DELIMITER $$

    CREATE TRIGGER InsUser AFTER INSERT ON marktplatz_user
    FOR EACH ROW BEGIN

    SET @name = NEW.name;
    SET @incomesum = NEW.incomesum;
    SET @user_id = NEW.id;
    SET @aktdatum = CURDATE();

    CASE WHEN
    (SELECT id FROM marktplatz_weekdata WHERE user_id = @user_id and datum = CURDATE()) IS NULL
    THEN
    INSERT INTO marktplatz_weekdata ( id, user_id, datum, name, currentmoney) VALUES (NULL, @user_id, @aktdatum, @name, @incomesum);
    ELSE
    Set @idweekdata =(SELECT id FROM marktplatz_weekdata WHERE user_id = @user_id and datum = CURDATE());
    UPDATE marktplatz_weekdata SET currentmoney =@incomesum WHERE id = @idweekdata;
    END CASE;

    DELETE FROM `marktplatz_weekdata` WHERE datum < date_sub( CURDATE(), interval 7 day);

    END;
    $$

    ich hab echt schon viel versucht und langsam verzweifel ich bitte helft mir

    mfg Kala
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

  3. #3
    Unregistriert
    Gast

    Standard AW: Trigger Problem

    ok hab ich und nun ?

  4. #4
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: Trigger Problem

    Das Angelesene umsetzen.
    Schau dir deinen Code an und schau wie es sein müsste.

  5. #5
    Unregistriert
    Gast

    Standard AW: Trigger Problem

    das hilft mir net wirklich ... nur so nebenbei dieser trigger läuft genau so auf eienr anderen version einer mysql db ...
    ich versteh halt net wo hier der fehler ist auch die seite die du geschickt hast kannte ich schon und hatte sie auch schon durfforstet ob ich irgendwo nen fehler hab ...
    also etwas genauere hilfe wäre sinnvoller als dieses "lehrerhafte" getuhe ... bin kein 5 jähriges kind das mal eben nach nem lolli fragt ...

  6. #6
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: Trigger Problem

    Dein Problem ist der Delimiter.
    siehe auch http://dev.mysql.com/doc/connector-n...delimiter.html

  7. #7
    Unregistriert
    Gast

    Standard AW: Trigger Problem

    wie kommst du da drauf ?

    also nur als beispiel:
    DROP TRIGGER IF EXISTS `InsUser`;
    DELIMITER $$

    CREATE TRIGGER InsUser AFTER INSERT ON marktplatz_user
    FOR EACH ROW BEGIN

    SET @name = NEW.name;
    SET @incomesum = NEW.incomesum;
    SET @user_id = NEW.id;
    SET @aktdatum = CURDATE();

    END;
    $$

    diesen code ausführe funktioniert der trigger ...
    wie kann es dann an meinem DELIMITER liegen ?

  8. #8
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: Trigger Problem

    Hab jetzt noch mal nachgelesen und den Code angesehen. Die Fehlermeldung 1064 ist eigentlich ohne Aussage aber der Hinweis mit der Zeile die ich nicht kenne sollte man schon näher untersuchen.

    Nimm mal die Backticks in dieser Zeile raus und entferne die leerzeichen vor und nach <
    Code:
    DELETE FROM `marktplatz_weekdata` WHERE datum < date_sub( CURDATE(), interval 7 day);
    Ansonsten stehe ich auch ziemlich auf den Schlauch gerade.

  9. #9
    Unregistriert
    Gast

    Standard AW: Trigger Problem

    alles schon versucht ... hatte den trigger auch schon in einer zeile ... bringt nix

  10. #10
    Prinz(essin)
    Registriert seit
    26.03.2013
    Beiträge
    835
    Danke
    20
    Bekam 76 mal "Danke" in 75 Postings

    Standard AW: Trigger Problem

    Delimiter ganz weglassen ist die Lösung. Das Angeben des Delimiters ist nur bei CLI Aufruf notwendig.

    siehe dazu http://stackoverflow.com/questions/5...mand-delimiter

    Hast Glück gehabt das ich da zufällig drüber gestolpert bin.

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •