sqlite3_delete_trigger.sql 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. -- Create trigger for automated deletion of dependent rows, this should normally be done using foreign keys
  2. CREATE TRIGGER delete_strds_base AFTER DELETE ON strds_base
  3. BEGIN
  4. DELETE FROM strds_absolute_time WHERE id = old.id;
  5. DELETE FROM strds_relative_time WHERE id = old.id;
  6. DELETE FROM strds_spatial_extent WHERE id = old.id;
  7. DELETE FROM strds_metadata WHERE id = old.id;
  8. END;
  9. CREATE TRIGGER delete_raster_base AFTER DELETE ON raster_base
  10. BEGIN
  11. DELETE FROM raster_absolute_time WHERE id = old.id;
  12. DELETE FROM raster_relative_time WHERE id = old.id;
  13. DELETE FROM raster_spatial_extent WHERE id = old.id;
  14. DELETE FROM raster_metadata WHERE id = old.id;
  15. END;
  16. CREATE TRIGGER delete_str3ds_base AFTER DELETE ON str3ds_base
  17. BEGIN
  18. DELETE FROM str3ds_absolute_time WHERE id = old.id;
  19. DELETE FROM str3ds_relative_time WHERE id = old.id;
  20. DELETE FROM str3ds_spatial_extent WHERE id = old.id;
  21. DELETE FROM str3ds_metadata WHERE id = old.id;
  22. END;
  23. CREATE TRIGGER delete_raster3d_base AFTER DELETE ON raster3d_base
  24. BEGIN
  25. DELETE FROM raster3d_absolute_time WHERE id = old.id;
  26. DELETE FROM raster3d_relative_time WHERE id = old.id;
  27. DELETE FROM raster3d_spatial_extent WHERE id = old.id;
  28. DELETE FROM raster3d_metadata WHERE id = old.id;
  29. END;
  30. CREATE TRIGGER delete_stvds_base AFTER DELETE ON stvds_base
  31. BEGIN
  32. DELETE FROM stvds_absolute_time WHERE id = old.id;
  33. DELETE FROM stvds_relative_time WHERE id = old.id;
  34. DELETE FROM stvds_spatial_extent WHERE id = old.id;
  35. DELETE FROM stvds_metadata WHERE id = old.id;
  36. END;
  37. CREATE TRIGGER delete_vector_base AFTER DELETE ON vector_base
  38. BEGIN
  39. DELETE FROM vector_absolute_time WHERE id = old.id;
  40. DELETE FROM vector_relative_time WHERE id = old.id;
  41. DELETE FROM vector_spatial_extent WHERE id = old.id;
  42. DELETE FROM vector_metadata WHERE id = old.id;
  43. END;