Einschränkungen für Filetables

Also Dank schon mal Ukulele!

Er akzeptiert den Code und ich kann den Trigger anlegen. Das ist schon mal gut. Aber wenn ich eine Excel Datei in den Ordner kopiere erscheint sie trotzdem in der Datenbank.
 
Werbung:
Also INSERTED spuckt dir alle Zeilen (können mehrere sein!) aus, die mit dem lettzten INSERT oder UPDATE betroffen waren. Mein Trigger soll in diesem Zeilen nach nicht erlaubten Treffern suchen und wenn er fündig wird die ganze Transaktion rückgängig machen und einen Fehler werfen.

Jetzt ist das bei Textvergleichen immer so eine Sache, ich weiß z.B. nicht ob da auch NULL vorkommen kann. Aber das kannst du einfach mit bestehenden Daten testen bis es passt.
 
Nein, NULL kann nie vorkommen, die Spalte hat immer einen Wert. Wenn ich eine Excel Tabelle in den Ordner kopieren möchte, bricht er ab und bringt eine Fehlermeldung. Hier nochmal der vollständige Code:

Code:
CREATE TRIGGER file_type_progr
ON  NutzerFile
AFTER INSERT
AS
BEGIN
IF ( SELECT count(*) FROM INSERTED WHERE file_type != 'jpg' ) > 0
BEGIN
RAISERROR('asdf',16,1)
ROLLBACK
END
END
 
Kann man sogar noch kürzen und natürlich auch erweitern mit mehr Dateitypen:
Code:
CREATE TRIGGER file_type_progr
ON  NutzerFile
AFTER UPDATE, INSERT
AS
IF ( SELECT count(*) FROM INSERTED WHERE file_type NOT IN ( 'jpg','weitere typen' ) ) > 0
BEGIN
RAISERROR('asdf',16,1)
ROLLBACK
END
 
Werbung:
Zurück
Oben