Ergebnis 1 bis 6 von 6

Thema: MySQL Trigger ID Löschen

  1. #1
    HTML Newbie
    Registriert seit
    28.01.2014
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard MySQL Trigger ID Löschen

    Hallo, ich erstelle gerade aus Übungszwecken eine Datenbank und muss einen Trigger einarbeiten. Es handelt sich um eine fiktive Firma, die für Kunden Kopierer wartet. Jeder Kunde hat eine ID und beliebig viele Kopierer. Ich dachte, ich erstelle einen Trigger, der, falls ein Kunde gelöscht wird, alle Kopierer als einer Untertabelle entfernt (wenn der Kunde die Firma verlässt, müssen seine Kopierer ja nicht mehr gewartet werden)

    Dies sieht so aus:

    CREATE TRIGGER kunde_geht
    before DELETE
    ON kunde
    FOR EACH ROW BEGIN
    DELETE FROM kunde_has_kopierer WHERE kunde_has_kopierer.kundennr=OLD.KNr;
    END;

    Ich bekomme immer Fehler, die die Synthax betreffen. Hinter OLD.Knr; bzw End; soll, bzw soll kein Semikolon sein, so die Fehlermeldung.

    Aber wahrscheinlich liegt es woanders dran?
    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

    Standard AW: MySQL Trigger ID Löschen

    Wäre besser,wenn du uns auch noch das OS und das verwendete DBMS nennen würdest.

    EDIT: OH sorry, steht ja in der Themenüberschrift das es sich um MySQL handelt.

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    28.01.2014
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: MySQL Trigger ID Löschen

    Ah, natürlich: MySQL auf Windows

  4. #4
    König(in)
    Registriert seit
    07.02.2009
    Ort
    Leipzig
    Beiträge
    1.391
    Danke
    2
    Bekam 21 mal "Danke" in 20 Postings

    Standard AW: MySQL Trigger ID Löschen

    Das Semikolon ist der Standard-Delimiter bei MySQL. Du musst vor deinem Trigger-Statement den Delimiter auf etwas anderes setzen. Siehe Beispiel im Handbuch:
    http://dev.mysql.com/doc/refman/5.1/...-triggers.html

  5. #5
    HTML Newbie
    Themenstarter

    Registriert seit
    28.01.2014
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: MySQL Trigger ID Löschen

    Super, vielen Dank! So einfach Dinge sind das, aber mir ist SQL noch so fremd, da ist es unüberschaubar
    Darf ich direkt noch eine Frage stellen? Ich bleibe mal hier in meinem Thread, damit nicht so viele andere durch meine Trigger-Probleme gestört sind:

    delimiter //

    CREATE TRIGGER naechste_Wartung AFTER INSERT ON rechnung
    FOR EACH ROW BEGIN
    IF ( rechnung.istBearbeitet=1) THEN
    (
    SELECT
    DATEADD(month, Wartungsinterval, naechsteWartung)
    FROM
    kunde_has_kopierer
    WHERE
    rechnung.Auftragsnr=kunde_erteilt_auftrag.ANr
    AND
    kunde_has_kopierer.seriennummer= kunde_erteil_auftrag.seriennummer
    )
    END IF;
    //

    delimiter ;


    Hier soll immer das Datum für eine nächste Wartung um die Anzahl der in Wartungsinterval hinterlegten Monate erhöht werden, sobald der Boolean in rechnung.isBearbeitet auf true gesetzt wird. Einmal weiß ich noch nicht, ob der Trigger so funktioniert; ich konnte ihn noch nicht testen, da ich wieder Prbleme mit der Synthax habe. Abwechselnd bekomme ich Meldungen, dass entweder ein ; oder ein ein END erwartet wird. Egal, wie ich es dreh und schiebe, der Code wird nicht fehlerfrei. Habe ich zu viele Klammern oder was falsch gemacht (und würde das so überhaupt funktionieren, dh, kann ich mittels einer Selectanweisung die Daten editieren?).

    Vielen, vielen lieben Dank für die aufmerksame Hilfe für mich Anfängerin!

  6. #6
    HTML Newbie
    Registriert seit
    10.01.2015
    Beiträge
    1
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: MySQL Trigger ID Löschen

    ich habe eine App auf meinem Smartphone, die GPS-Einträge in einer SQLite-Datenbank speichert. Jetzt wollte ich mir die GPS-Einträge mal anschauen, habe aber folgendes Problem: Die Tabelle mit den GPS-Daten enthält viel weniger Einträge als erwartet. Die Datenbank-Datei ist ca. 6MB groß. Speichere ich alle Tabellen als Textdatei kommen die zusammmen nur auf ca. 100kB. Kann es sein, dass die Datenbank defekt ist, so dass die Tabellen irgendwie abgeschnitten sind? Oder wofür wird der restliche Speicherplatz benötigt? Neben den Tabellen sind in der Datenbank 10 Index-Objekte.

Ähnliche Themen

  1. Trigger Problem
    Von Unregistriert im Forum Datenbank Forum - MySQL und andere Datenbanksoftware
    Antworten: 9
    Letzter Beitrag: 17.08.2013, 17:53
  2. mysql.php connected sich ncht mit der MySQL Datenbank
    Von Unregistriert im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 17.06.2010, 16:51
  3. MySQL-Datenbanken löschen?
    Von Mütze im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 5
    Letzter Beitrag: 07.01.2009, 08:51
  4. per PHP neue MySQL-Datenbank und MySQL-Benutzer anlegen
    Von sudeki05 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 15.04.2007, 19:40
  5. php/MySql(Tabelleninhalte per php löschen/bearbeiten)
    Von fabs im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 13
    Letzter Beitrag: 28.03.2005, 19:41

Stichworte

Berechtigungen

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