Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zastosowanie SELECTU W TRIGGERZE
Forum PHP.pl > Forum > Bazy danych > MySQL
szypi1989
Witam.Otóż mam taki TRIGGER:
  1. delimiter //
  2. CREATE TRIGGER update_sport
  3. BEFORE UPDATE ON school_users_info
  4. FOR EACH ROW
  5. BEGIN
  6. SET @a=(SELECT sport FROM school_users_info WHERE id = OLD.id AND FIND_IN_SET(OLD.sport,'football,tenis
  7. stołowy,tenis,golf,hokej,koszykówka,kręgle,rowery,turystyka,bieganie,jazda konna,szachy,bilard,lotnictwo'));
  8. IF (@a IS NULL) THEN
  9. SET NEW.sport ='golfa';
  10. ELSE
  11. SET NEW.sport ='golf';
  12. INSERT INTO school_sport_info VALUES(0,OLD.sport);
  13. END IF;
  14. END;//


I CHCIAŁBYM SPRAWDZIĆ CZY ZWRÓCI PUSTY WYNIK,ALE JAKOŚ MI TO NIE IDZIE.
CHODZI MI O :
SET @a=(SELECT sport FROM school_users_info WHERE id = OLD.id AND FIND_IN_SET(OLD.sport,'football,tenis
stołowy,tenis,golf,hokej,koszykówka,kręgle,rowery,turystyka,bieganie,jazda konna,szachy,bilard,lotnictwo'));

JAK TUTAJ SPRAWDZIĆ ZWRACANIE PUSTEGO WYNIKU,PONIEWAŻ IF (@a IS NULL) THEN COŚ NIE DZIAŁA
mmmmmmm
  1. delimiter //
  2. CREATE TRIGGER update_sport
  3. BEFORE UPDATE ON school_users_info
  4. FOR EACH ROW
  5. BEGIN
  6. DECLARE wynik Varchar(200);
  7. SELECT sport INTO wynik FROM school_users_info WHERE id = OLD.id AND FIND_IN_SET(OLD.sport,'football,tenis stołowy,tenis,golf,hokej,koszykówka,kręgle,rowery,turystyka,bieganie,jazda konna,szachy,bilard,lotnictwo');
  8. IF (wynik IS NULL) THEN
  9. SET NEW.sport ='golfa';
  10. ELSE
  11. SET NEW.sport ='golf';
  12. INSERT INTO school_sport_info VALUES(0,OLD.sport);
  13. END IF;
  14. END;//
szypi1989
dobra chodzi,dzięki:)
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.