stds_raster3d_register_trigger_template.sql 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. --#############################################################################
  2. -- This SQL script creates a trigger to update a space-time raster3d dataset
  3. -- metadata
  4. --
  5. -- Author: Soeren Gebbert soerengebbert <at> googlemail <dot> com
  6. --#############################################################################
  7. -- SPACETIME_NAME is a placeholder for specific stds name (SQL compliant): name_mapset
  8. -- SPACETIME_ID is a placeholder for specific stds id: name@mapset
  9. --PRAGMA foreign_keys = ON;
  10. -- Triggers are disabled due to huge performance issues
  11. --CREATE TRIGGER SPACETIME_NAME_raster3d_metadata_register_insert_trigger AFTER INSERT ON SPACETIME_NAME_raster3d_register
  12. -- BEGIN
  13. -- -- Update the min and max values
  14. -- UPDATE str3ds_metadata SET min_min =
  15. -- (SELECT min(min) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  16. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  17. -- ) WHERE id = 'SPACETIME_ID';
  18. -- UPDATE str3ds_metadata SET min_max =
  19. -- (SELECT max(min) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  20. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  21. -- ) WHERE id = 'SPACETIME_ID';
  22. -- UPDATE str3ds_metadata SET max_min =
  23. -- (SELECT min(max) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  24. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  25. -- ) WHERE id = 'SPACETIME_ID';
  26. -- UPDATE str3ds_metadata SET max_max =
  27. -- (SELECT max(max) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  28. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  29. -- ) WHERE id = 'SPACETIME_ID';
  30. -- -- Update the resolution
  31. -- UPDATE str3ds_metadata SET nsres_min =
  32. -- (SELECT min(nsres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  33. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  34. -- ) WHERE id = 'SPACETIME_ID';
  35. -- UPDATE str3ds_metadata SET nsres_max =
  36. -- (SELECT max(nsres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  37. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  38. -- ) WHERE id = 'SPACETIME_ID';
  39. -- UPDATE str3ds_metadata SET ewres_min =
  40. -- (SELECT min(ewres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  41. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  42. -- ) WHERE id = 'SPACETIME_ID';
  43. -- UPDATE str3ds_metadata SET ewres_max =
  44. -- (SELECT max(ewres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  45. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  46. -- ) WHERE id = 'SPACETIME_ID';
  47. -- UPDATE str3ds_metadata SET tbres_min =
  48. -- (SELECT min(tbres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  49. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  50. -- ) WHERE id = 'SPACETIME_ID';
  51. -- UPDATE str3ds_metadata SET tbres_max =
  52. -- (SELECT max(tbres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  53. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  54. -- ) WHERE id = 'SPACETIME_ID';
  55. -- END;
  56. --
  57. --CREATE TRIGGER SPACETIME_NAME_raster3d_metadata_register_delete_trigger AFTER DELETE ON SPACETIME_NAME_raster3d_register
  58. -- BEGIN
  59. -- -- Update the min and max values
  60. -- UPDATE str3ds_metadata SET min_min =
  61. -- (SELECT min(min) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  62. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  63. -- ) WHERE id = 'SPACETIME_ID';
  64. -- UPDATE str3ds_metadata SET min_max =
  65. -- (SELECT max(min) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  66. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  67. -- ) WHERE id = 'SPACETIME_ID';
  68. -- UPDATE str3ds_metadata SET max_min =
  69. -- (SELECT min(max) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  70. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  71. -- ) WHERE id = 'SPACETIME_ID';
  72. -- UPDATE str3ds_metadata SET max_max =
  73. -- (SELECT max(max) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  74. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  75. -- ) WHERE id = 'SPACETIME_ID';
  76. -- -- Update the resolution
  77. -- UPDATE str3ds_metadata SET nsres_min =
  78. -- (SELECT min(nsres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  79. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  80. -- ) WHERE id = 'SPACETIME_ID';
  81. -- UPDATE str3ds_metadata SET nsres_max =
  82. -- (SELECT max(nsres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  83. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  84. -- ) WHERE id = 'SPACETIME_ID';
  85. -- UPDATE str3ds_metadata SET ewres_min =
  86. -- (SELECT min(ewres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  87. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  88. -- ) WHERE id = 'SPACETIME_ID';
  89. -- UPDATE str3ds_metadata SET ewres_max =
  90. -- (SELECT max(ewres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  91. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  92. -- ) WHERE id = 'SPACETIME_ID';
  93. -- UPDATE str3ds_metadata SET tbres_min =
  94. -- (SELECT min(tbres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  95. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  96. -- ) WHERE id = 'SPACETIME_ID';
  97. -- UPDATE str3ds_metadata SET tbres_max =
  98. -- (SELECT max(tbres) FROM raster3d_metadata WHERE raster3d_metadata.id IN
  99. -- (SELECT id FROM SPACETIME_NAME_raster3d_register)
  100. -- ) WHERE id = 'SPACETIME_ID';
  101. -- END;
  102. --
  103. --
  104. --
  105. --
  106. --
  107. --
  108. --
  109. --
  110. --