Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] problem z triggerem
skowron-line
post
Post #1





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Witam ma taki problem chcialem napisach trigger ktory przy update do tabeli zmieni nazwe kolumny w innej w przypadku kiedy nazwa ulegnie zmianie
  1. delimiter //
  2. CREATE TRIGGER uprawnienia before UPDATE ON personel_uprawnienia_schemat
  3. FOR each row
  4. begin IF(OLD.upr != NEW.upr) then
  5. ALTER TABLE personel_uprawnienia CHANGE OLD.upr NEW.upr tinyint(1) DEFAULT `0`;
  6. end IF;
  7. end;
  8. //
  9. delimiter;

natomiast dostaje blad
Kod
#1103 - Incorrect table name 'OLD'
Go to the top of the page
+Quote Post
nevt
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


nie bardzo rozumiem, co chcesz przez to osiągnąć... generalnie taka automatyczna modyfikacja struktury tabel jest kiepskim pomysłem... przypuszczam, ze twój problem rozwiązałby zwykły klucz obcy z kaskadową aktualizacją (bez żadnych wyzwalaczy...) napisz dokładniej po co to robisz (co chcesz osiągnąć) to coś sie wymyśli...

a błąd w składni jest dlatego, że w tym miejscu napis `OLD`.`upr` jest interpretowany jako nazwa pola "wprost" - a ty chyba oczekujesz, że podstawi ci wartość przypisaną do OLD.upr

Ten post edytował nevt 16.03.2008, 15:07:20
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 13:23