Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Trigger zabraniający na usuwanie rekordów
Forum PHP.pl > Forum > Bazy danych > MySQL
karwo27
Mam problem z triggerem, który nie pozwalałby usuwać rekordów z tabeli. Wygenerowałem kod:

  1. CREATE TRIGGER dbo.abc1
  2. ON dbo.Godzina
  3. After DELETE
  4. AS
  5. IF EXISTS (SELECT * FROM dbo.leczenie)
  6. BEGIN
  7. PRINT 'Rekordy z tej tabeli nie moga zostac usuniete'
  8. END


ale coć nie działa...Fakt, faktem rekordu nie można usunąć, ale nie wyświetla się ten mój napis. Ktoś wie gdzie jest błąd?

A ktoś wie jakby wyglądał kod triggera, który pokazywałby na ekranie napis "Dodałeś do tabeli nowe dane" , gdy użytkownik doda do tabeli nowy rekord .....?

Pracuję w najnowszej wersji SQL Server.

Z góry dzięki za pomoc:)
john_doe
zamiast print spróbuj dać

BEGIN
RAISERROR 'Twój komunikat'
ROLLBACK TRANSACTION
RETURN
END

P.S. źle założyłeś wątek. Jest specjalny dział na mssql
karwo27
Ale jak to by miało wyglądać?

Coś takiego nie wchodzi?
  1. CREATE TRIGGER dbo.abc1
  2. ON dbo.Godzina
  3. After DELETE
  4. AS
  5. IF EXISTS (SELECT * FROM dbo.leczenie)
  6. BEGIN
  7. raiserror (Rekordy z tej tabeli nie moga zostac usuniete)
  8. END


Tak składnia Raiserror chyba jakoś bardziej rozbudowana jest?
john_doe
masz wyżej w moim kodzie.
rollback tran
return

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.