Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 1 Dołączył: 7.05.2005 Ostrzeżenie: (0%)
|
Witam.
To mój pierwszy kontakt z triggerami więc proszę o wyrozumiałość (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Mój kod:
I dostaję błąd: ERROR 1362 (HY000): Updating of NEW row is not allowed in after trigger Chciałem aby po dodaniu nowej rezerwacji do tabeli dla danej rezerwacji pole reservation_number mialo postac: 1/6/2008 czyli najpierw ID rekordu w tabeli potem miesiąc aktualny i rok. Co robię zle? (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif) Ten sam problem: Link |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 36 Dołączył: 31.03.2006 Skąd: Zielona Góra Ostrzeżenie: (0%)
|
W oraclu problem ten nazywa się "Mutujące tablice" (mutating tables) i występuję tylko w przypadku trigerów wierszowych (row level triggers), czyli tych zawierających opcję FOR EACH ROW. Jeżeli przekształcisz wyzwalacz wierszowy (row triggers) w wyzwalacz poleceniowy (statement
triggers) powinno zadziałać. Niestety nie będziesz miał wtedy dostępu do zmiennych NEW i OLD. Dotyczy to Oracla, myślę jednak że w MySql jedst podobnie. Pozdrawiam |
|
|
|
parzol Problem z triggerem w MySQL 27.06.2008, 22:21:44
artega Jak widać MySQL nie zezwala na aktualizacje nowego... 28.06.2008, 08:15:50 
parzol Cytat(artega @ 28.06.2008, 07:15:50 )... 28.06.2008, 12:20:56 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 11:43 |