[ sagram @ 13.01.2008. 21:46 ] @
pitanje
kako da onemogucim update polja ali tek poslije inserta cijelog polja.
[ goranvuc @ 13.01.2008. 21:57 ] @
Pa mozes preko INSTEAD OF UPDATE trigger-a (ponisti izmenjene vrednosti, tj. vrati ih na stare, ili ne radi nista - koristi IF UPDATED(column) proveru).

To je jedna moguca varijanta, mozda se neko seti jos neceg.
[ goranvuc @ 13.01.2008. 22:16 ] @
A evo ti i predlog kako bi taj trigger mogao da izgleda (pretpostavio sam da se ta tvoja tabela zove "TvojaTabela"
Code:

CREATE TRIGGER IO_Trig_UPD_TvojaTabela ON TvojaTabela
INSTEAD OF UPDATE
AS
BEGIN
SET NOCOUNT ON
SET NOCOUNT OFF
END

ovo nocount on/off je cisto da zabunimo SQL Server da misli da ovaj trigger nesto radi. Umesto toga bi mogao u neku LOG tabelu da upisujes sta je neko pokusavao da upise u tabelu i u koje vreme npr.
[ sagram @ 13.01.2008. 22:50 ] @
probao ne ide, imam kaskadno delete i update. problem je sledeci.koristim acces kao front end a sql server u pozadini. aplikacija je za materijalno knjigovostvo. uglavnom zelim da poslije unosa reda ili cijelog racuna blokiram tabelu za izmjene tj update. preko deny ne ide jer tokom unosa imam dosta preskakanja po redu ( ybog cijena i slicno) tako da je tako ne mogu blokirati
[ goranvuc @ 13.01.2008. 23:07 ] @
Pa skini kaskadno brisanje i koristi ON DELETE trigger - sta mislis kako smo izvodili kaskadno brisanje u starijim verzijama MS SQL-a kada ga nije bilo? Bogme sam pisao kobasice od koda, a sad na klik ;)

Skini kaskadni update i delete i odradi ga rucno, tj. zameni ga sa odgovarajucim trigerima.