Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z wyzwalaczem
szypi1989
post
Post #1





Grupa: Zarejestrowani
Postów: 207
Pomógł: 0
Dołączył: 7.09.2010

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


  1. otóż mam problem z wyzwalaczem.oto jest kod sql:
  2. DELIMITER
  3.  
  4. CREATE TRIGGER tgr_nazwy
  5. AFTER INSERT OR UPDATE OR DELETE ON documentsPictures
  6. FOR EACH ROW
  7. BEGIN
  8. IF (TG_OP = 'DELETE') THEN
  9. UPDATE `documents` SET `picture` = (SELECT `file` FROM `documentsPictures` WHERE `documentId` = OLD.`documentId` ORDER BY weight LIMIT 1) WHERE `documentId` = OLD.`documentId`;
  10. ELSE
  11. UPDATE `documents` SET `picture` = (SELECT `file` FROM `documentsPictures` WHERE `documentId` = NEW.`documentId` ORDER BY weight LIMIT 1) WHERE `documentId` = NEW.`documentId`;
  12. END IF;
  13. RETURN NEW;
  14. END;


proszę o pomoc,gdzie tu jest błąd
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
szypi1989
post
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 0
Dołączył: 7.09.2010

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


ok.ale teraz jest taki błąd:
#1363 - There is no OLD row in on INSERT trigger
oto kod:
  1. DELIMITER
  2.  
  3. CREATE TRIGGER tgr_nazwy
  4. AFTER INSERT ON documentsPictures
  5. FOR EACH ROW
  6. BEGIN
  7. IF (TG_OP = 'DELETE') THEN
  8. UPDATE `documents` SET `picture` = (SELECT `file` FROM `documentsPictures` WHERE `documentId` = OLD.`documentId` ORDER BY weight LIMIT WHERE `documentId` = OLD.`documentId`;
  9. ELSE
  10. UPDATE `documents` SET `picture` = (SELECT `file` FROM `documentsPictures` WHERE `documentId` = NEW.`documentId` ORDER BY weight LIMIT WHERE `documentId` = NEW.`documentId`;
  11. END IF;
  12. RETURN NEW;
  13. END;
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 22:18