Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyzwalacze?
Forum PHP.pl > Forum > Bazy danych > MySQL
grzegorz-gg
Mam dwie tabele pierwsza to tabela producenci druga to tabela podrzedna producenci_info chcialbym zeby po wstawieniu rekordu do tabeli producenci automatycznie wstawiał sie rekord do tabeli producenci_info z numerem id ostatniego dodanego rekordu z tabeli producenci.
Jak można to zrobic wydajen mi sie ze do tego potrzebne sa wyzwalacze ale nieiwem zabardzo jak sie zabrac do tego.
Za pomoc zgory dziekuje.
Vogel
jaka baza danych i ktora wersja?
grzegorz-gg
Baza MySQL 5.0 w niej juz sa wyzwalacze.
Ale niewiem jak taki wyzwalacz mam zrobic aby po wstawieniu jedego rekordu do tabeli PRODUCENCI automatycznie wstawial sie rekord do tabeli PRODUCENCI_INFO z numerem ID rekordu ostatnio dodanego w tabeli PRODUCENCI.
elessar
Prawde mowiac nie korzystalem jeszcze z mysql 5, ale powinienes stworzyc AFTER INSERT a do id odwolujesz sie -> NEW.id
Nie mam mozliwosci aby to sprawdzic ale generalnie taka jest zasada.
Jezeli nie zadziala to sprawdz OLD.id albo stworz triggera BEFORE INSERT i przetestuj z NEW, OLD. Musi chodzic tongue.gif

  1. CREATE TRIGGER test AFTER INSERT ON `tabela`
  2. FOR EACH ROW
  3. BEGIN INSERT
  4. INTO tabela2
  5. (prod_id) VALUES (NEW.id)
  6. END
  7. ;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.