Kampfgummibaerlie
Datenbank-Guru
- Beiträge
- 743
Ich verlinke hier auf ein anderes Forum, weil ich glaube, auch dieses nur zwecks Informationsaustausch gut ist, und weniger zwecks kommerziellen Nutzen (Und ich werde hier bleiben )
[Erledigt] trigger - wert von einer Tabelle in eine andere eintragen. - php.de
Ich zitiere hier ein schnell abgeschlossener Code von unserem "Mr. Elephant" (Akretschmer)
Hier ein relativ einfacher Trigger, welcher aber seinen Zweck erfüllt (Von Akretschmer geschrieben)
Musste am Anfang nachdenken, was es bringen würde, einen Trigger zu machen, dann werte in eine Tabelle einfügen, und die Tabelle abzurufen, von daher:
Es sind 2 verschiedene Tabellen (Man fügt in t1 ein, und es werden die Werte (in diesem Fall 1:1) in de t2 ein)
Und zum Schluss kommt meine Frage:
Habe ich mir beinahe schon selbst beantwortet, aber zur Sicherheit frage ich auch noch nach:
Ist es möglich, wenn ich nur die ID ändere, dass sich >alle< (x) andere Werte so verändern, dass sie den Werten in der anderen Tabelle entsprechen? Oder ist das automatisch so?
Ich kenne folgenden Code, welchen ich nutze:
Werde gleich mal probieren, und hier (15 Minuten kann man editieren, das sollte sich ausgehen) das Resultat meiner Versuche reineditieren, oder im nächsten Post schreiben
Denke ich, funktioniert, weil in dem oben stehendem Trigger von Akretschmer ist ja "nur" ein insert-trigger, sprich on update tut der nix ^^
[Erledigt] trigger - wert von einer Tabelle in eine andere eintragen. - php.de
Ich zitiere hier ein schnell abgeschlossener Code von unserem "Mr. Elephant" (Akretschmer)
Hier ein relativ einfacher Trigger, welcher aber seinen Zweck erfüllt (Von Akretschmer geschrieben)
Code:
test=# create table t1 (id int, val int);
CREATE TABLE
test=*# create table t2 (id int, val int);
CREATE TABLE
test=*# create or replace function t1_2_t2() returns trigger as $$begin insert into t2 values(new.id, new.val); return new; end;$$language plpgsql;
CREATE FUNCTION
test=*# create trigger trg1 after insert on t1 for each row execute procedure t1_2_t2();
CREATE TRIGGER
test=*# insert into t1 values (1,10);
INSERT 0 1
test=*# select * from t2;
id | val
----+-----
1 | 10
(1 row)
Musste am Anfang nachdenken, was es bringen würde, einen Trigger zu machen, dann werte in eine Tabelle einfügen, und die Tabelle abzurufen, von daher:
Es sind 2 verschiedene Tabellen (Man fügt in t1 ein, und es werden die Werte (in diesem Fall 1:1) in de t2 ein)
Und zum Schluss kommt meine Frage:
Habe ich mir beinahe schon selbst beantwortet, aber zur Sicherheit frage ich auch noch nach:
Ist es möglich, wenn ich nur die ID ändere, dass sich >alle< (x) andere Werte so verändern, dass sie den Werten in der anderen Tabelle entsprechen? Oder ist das automatisch so?
Ich kenne folgenden Code, welchen ich nutze:
Code:
ALTER TABLE vermietungen ADD CONSTRAINT Maschinen_Synchen FOREIGN KEY (maschinen_id) REFERENCES maschinen (maschinen_id) ON UPDATE CASCADE ON DELETE RESTRICT;
Werde gleich mal probieren, und hier (15 Minuten kann man editieren, das sollte sich ausgehen) das Resultat meiner Versuche reineditieren, oder im nächsten Post schreiben
Denke ich, funktioniert, weil in dem oben stehendem Trigger von Akretschmer ist ja "nur" ein insert-trigger, sprich on update tut der nix ^^