Ich habe die folgende DB-Struktur in SQLite:Cascade Trigger in SQLite
db structure http://i39.tinypic.com/kb3qef.jpg
Ich möchte einen Auslöser schaffen, dass, wenn ich ein Land alle zugehörigen Bezirke löschen, Kommunen und Gemeinden werden ebenfalls gelöscht (wie MySQL InnoDB), habe ich mit diesem SQLite Trigger und kam mit versucht:
Bezirke:
CREATE TRIGGER [delete_country]
BEFORE DELETE
ON [countries]
FOR EACH ROW
BEGIN
DELETE FROM districts WHERE districts.id_countries = id;
END
Gemeinden:
CREATE TRIGGER [delete_district]
BEFORE DELETE
ON [districts]
FOR EACH ROW
BEGIN
DELETE FROM municipalities WHERE municipalities.id_districts = id;
END
Parishes:
CREATE TRIGGER [delete_municipality]
BEFORE DELETE
ON [municipalities]
FOR EACH ROW
BEGIN
DELETE FROM parishes WHERE parishes.id_municipalities = id;
END
Ich habe getestet noch nicht die delete_district
und delete_municipality
auslöst, weil ich ein seltsames Verhalten auf dem delete_country
Trigger erhalten: wenn ich ein löschen Land nur der erste verwandte Bezirk wird gelöscht, alle anderen verwandten Bezirke bleiben in der Tabelle. Was mache ich falsch?
sein, was Sie die Grafiken erstellt haben verwenden ? – Nifle
http://ondras.zarovi.cz/sql/ –