Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql] Problem z triggerem
Forum PHP.pl > Forum > Bazy danych > MySQL
skowron-line
Witam poniższy trigger powinien przy dodaniu usunąć ostatni rekord ale większy niż 60 dni z bazy ale tego nie robi
wszystkie warunki są spełnione ale mimo to nic sie nie dzieje. Mógłby ktoś zerknąć na to.
Z góry dziękuje.
  1. CREATE TRIGGER pers_aktywnosc_delete AFTER INSERT ON personel_aktywnosc
  2. FOR EACH ROW
  3. BEGIN SET @id = NEW.id_personelu;
  4. SELECT id_grupy FROM personel WHERE id = @id INTO @id_grupy; IF( @id_grupy > 9) THEN
  5. SELECT id_aktywnosc FROM personel_aktywnosc WHERE id_personelu = @id AND datediff(current_timestamp, data_aktywnosci ) > 60 ORDER BY data_aktywnosci ASC LIMIT 1 INTO @last_id; DELETE FROM personel_aktywnosc WHERE id_aktywnosc = @last_id LIMIT 1 ;
  6. END IF;
  7. END;
Sedziwoj
Co prawda nie pisałem Triggerów pod MySQL, ale czy nie powinno być:
  1. SELECT
  2. id_aktywnosc INTO @last_id FROM
  3. personel_aktywnosc
  4. WHERE id_personelu = @id AND datediff(current_timestamp, data_aktywnosci ) > 60
  5. ORDER BY data_aktywnosci ASC LIMIT 1 ;


(dziwnie to formatuje)
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.