sqlite3_delete_trigger.sql 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. --#############################################################################
  2. -- This SQL script generates the sqlite3 trigger
  3. --
  4. -- Author: Soeren Gebbert soerengebbert <at> googlemail <dot> com
  5. --#############################################################################
  6. -- Create trigger for automated deletion of dependent rows
  7. CREATE TRIGGER delete_strds_base AFTER DELETE ON strds_base
  8. BEGIN
  9. DELETE FROM strds_absolute_time WHERE id = old.id;
  10. DELETE FROM strds_relative_time WHERE id = old.id;
  11. DELETE FROM strds_spatial_extent WHERE id = old.id;
  12. DELETE FROM strds_metadata WHERE id = old.id;
  13. END;
  14. CREATE TRIGGER delete_raster_base AFTER DELETE ON raster_base
  15. BEGIN
  16. DELETE FROM raster_absolute_time WHERE id = old.id;
  17. DELETE FROM raster_relative_time WHERE id = old.id;
  18. DELETE FROM raster_spatial_extent WHERE id = old.id;
  19. DELETE FROM raster_metadata WHERE id = old.id;
  20. DELETE FROM raster_stds_register WHERE id = old.id;
  21. END;
  22. CREATE TRIGGER delete_str3ds_base AFTER DELETE ON str3ds_base
  23. BEGIN
  24. DELETE FROM str3ds_absolute_time WHERE id = old.id;
  25. DELETE FROM str3ds_relative_time WHERE id = old.id;
  26. DELETE FROM str3ds_spatial_extent WHERE id = old.id;
  27. DELETE FROM str3ds_metadata WHERE id = old.id;
  28. END;
  29. CREATE TRIGGER delete_raster3d_base AFTER DELETE ON raster3d_base
  30. BEGIN
  31. DELETE FROM raster3d_absolute_time WHERE id = old.id;
  32. DELETE FROM raster3d_relative_time WHERE id = old.id;
  33. DELETE FROM raster3d_spatial_extent WHERE id = old.id;
  34. DELETE FROM raster3d_metadata WHERE id = old.id;
  35. DELETE FROM raster3d_stds_register WHERE id = old.id;
  36. END;
  37. CREATE TRIGGER delete_stvds_base AFTER DELETE ON stvds_base
  38. BEGIN
  39. DELETE FROM stvds_absolute_time WHERE id = old.id;
  40. DELETE FROM stvds_relative_time WHERE id = old.id;
  41. DELETE FROM stvds_spatial_extent WHERE id = old.id;
  42. DELETE FROM stvds_metadata WHERE id = old.id;
  43. END;
  44. CREATE TRIGGER delete_vector_base AFTER DELETE ON vector_base
  45. BEGIN
  46. DELETE FROM vector_absolute_time WHERE id = old.id;
  47. DELETE FROM vector_relative_time WHERE id = old.id;
  48. DELETE FROM vector_spatial_extent WHERE id = old.id;
  49. DELETE FROM vector_metadata WHERE id = old.id;
  50. DELETE FROM vector_stds_register WHERE id = old.id;
  51. END;