![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Witam ponownie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Tym razem mam problem z utworzeniem triggera. Przewertowałem sporą część linków dotyczących tworzenia triggerów ale za Chiny nie mogę sobie poradzić z małą pierdołą. Chciałbym aby trigger był odpalany po wpisaniu, modyfikacji lub usunięciu danych z tabeli. W związku z czym napisałem:
co kończy się błędem: Cytat Script line: 21 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OR UPDATE OR DELETE ON card_category FOR EACH ROW BEGIN END' at line 1 O co chodzi? Próbowałem również magicznych konstrukcji (gdzieś znalazłem taki przykład) z:
oraz:
co również nie działa. Moja wersja MySQL to 5.0.27. Pozdrawiam, pion // EDIT: Jest jeszcze ciekawsze zjawisko! Na razie chciałem utworzyć 3 osobne triggery, w związku z czym zrobiłem to tak:
Wywołaniem powyższego kodu skutkuje w: Cytat Script line: 19 Trigger does not exist Script line: 20 Trigger does not exist Script line: 28 Trigger already exists Script line: 34 Trigger already exists Nie rozumiem tu czegoś: dlaczego najpierw wypisywane jest, że trigger nie istnieje, a później, że już istnieje? W rezultacie zawsze dodawany jest tylko pierwszy trigger czyli update_category_items_tai. Co robię źle? (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) Ten post edytował phpion 21.06.2008, 10:33:21 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Niestety nadal to samo :| Ogólnie to wielka kupa, że nie można dać po prostu AFTER INSERT OR UPDATE OR DELETE *... Może ktoś jeszcze będzie miał jakieś pomysły?
Cytat Bo z tego co widzę wszystkie 3 triggery: update_category_items_tai update_category_items_tau update_category_items_tad system widzi jako jeden. Dałem nazwy t1, r2, e3 i to samo... * za http://www.brainbell.com/tutorials/MySQL/C...ng_Triggers.htm Cytat A single trigger cannot be associated with multiple events or multiple tables, so if you need a trigger to be executed for both INSERT and UPDATE operations, you'll need to define two triggers. // EDIT: Wygląda na to, że pozamiatane: http://lists.mysql.com/commits/8316 Cytat We don't allow creation of several triggers of the same type yet W takim razie takie triggery to sobie można wsadzić... Ten post edytował phpion 21.06.2008, 17:37:50 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 14:46 |