Einen schönen guten Tag!
ich bin Anfänger und habe ein Frage.
Ich habe eine Tabelle1 mit den Spalten: (id_tabelle1 / id_tabelle2/ wert1 /wert3) und eine Tabelle 2 mit den Spalten: ( id_tabelle2 / wert2 / wert4)
id_xx sind Priärschlüsseln und Auto_increm
id_tabelle2 sind mit Join verküpft.
Ich möchte gerne nach dem der Wert1 in Tabelle 1 eingetragen wurde, automatisch in tabelle2 wo der wert id_tabelle2 (von Tabelle1) = id_tabelle2 (in Tabelel2) den Wert 2 mit dem wert 1 aus Tabelle 1 überschreiben.
Die Prozedur muss so erfolgen.
Ich habe mich mit dem Trigger auseinander gesetzt. Un dich mache immer etwas falsch. Ich habe die Bedingung das es dort in T2 eingetragen werden soll wo id_tabelle2 = id_tabelle2 und es ganz einfach gemacht.
Bei neuem Datensatz in T1 >> neuer Datensatz in T2 selbst das geht nicht. Es ist mir wirklich peinlich.
1) über phpmyadmin > in Tabelle 1 > Trigger wählen > neuen Trigger erstellen.
Triggername: T1_in_T2
Tabelle: tabelle1
Zeit: After
Ereignis: Insert
VARIANTE1:
Beschreibung: insert into tabelle2 (id_tabelle2, wert2) values ('new.id', 'wert1')
_________
Befehl:
CREATE TRIGGER `tabele1intabelle2` AFTER INSERT ON `tabelle1`
FOR EACH ROW insert into tabelle2 (id_tabelle2, wert2) values ('new.id', 'wert1')
Variante2:
Beschreibung: insert into tabelle2 (wert2) values ('wert1')
MySQL meldet: #1442 - Can't update table 'tabelle2' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Ich habe auch verschieden andere Möglichkeiten probiert leider ohne Erfolg.
Auch ordentlich mit Begin und END usw.
Ich wäre wirklich dankbar wenn Ihr ein Lösung hättet (wäre genial wenn ihr auch gleich die Abfrage nach der Id_tabelle2 einbauen könntet)
Herzlichen Dank
Liebe Grüße
Georg
ich bin Anfänger und habe ein Frage.
Ich habe eine Tabelle1 mit den Spalten: (id_tabelle1 / id_tabelle2/ wert1 /wert3) und eine Tabelle 2 mit den Spalten: ( id_tabelle2 / wert2 / wert4)
id_xx sind Priärschlüsseln und Auto_increm
id_tabelle2 sind mit Join verküpft.
Ich möchte gerne nach dem der Wert1 in Tabelle 1 eingetragen wurde, automatisch in tabelle2 wo der wert id_tabelle2 (von Tabelle1) = id_tabelle2 (in Tabelel2) den Wert 2 mit dem wert 1 aus Tabelle 1 überschreiben.
Die Prozedur muss so erfolgen.
Ich habe mich mit dem Trigger auseinander gesetzt. Un dich mache immer etwas falsch. Ich habe die Bedingung das es dort in T2 eingetragen werden soll wo id_tabelle2 = id_tabelle2 und es ganz einfach gemacht.
Bei neuem Datensatz in T1 >> neuer Datensatz in T2 selbst das geht nicht. Es ist mir wirklich peinlich.
1) über phpmyadmin > in Tabelle 1 > Trigger wählen > neuen Trigger erstellen.
Triggername: T1_in_T2
Tabelle: tabelle1
Zeit: After
Ereignis: Insert
VARIANTE1:
Beschreibung: insert into tabelle2 (id_tabelle2, wert2) values ('new.id', 'wert1')
_________
Befehl:
CREATE TRIGGER `tabele1intabelle2` AFTER INSERT ON `tabelle1`
FOR EACH ROW insert into tabelle2 (id_tabelle2, wert2) values ('new.id', 'wert1')
Variante2:
Beschreibung: insert into tabelle2 (wert2) values ('wert1')
MySQL meldet: #1442 - Can't update table 'tabelle2' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Ich habe auch verschieden andere Möglichkeiten probiert leider ohne Erfolg.
Auch ordentlich mit Begin und END usw.
Ich wäre wirklich dankbar wenn Ihr ein Lösung hättet (wäre genial wenn ihr auch gleich die Abfrage nach der Id_tabelle2 einbauen könntet)
Herzlichen Dank
Liebe Grüße
Georg
Kommentar