CSUN#90600 Er zijn heel veel onnodige gebouwen/verdiepingen/ruimten aangemaakt vanuit de daily procedure update_vastgoed. Er waren al gebouwen/verdiepingen/ruimten verwijderd die 1 dag hebben bestaan, maar er blijken ook flink wat gebouwen/verdiepingen/ruimten te zijn verwijder die zelfs op dezelfde dag al zijn verwijderd. Om ook die te verwijderen, daarvoor is dit script.
svn path=/Customer/; revision=70578
This commit is contained in:
74
onces/CSUN/CSUN#90600_verwijderenALG_samedaydelete.sql
Normal file
74
onces/CSUN/CSUN#90600_verwijderenALG_samedaydelete.sql
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
--
|
||||||
|
-- $Id$
|
||||||
|
--
|
||||||
|
-- Korte beschrijving wat het script doet
|
||||||
|
-- Onnodige gebouwen/verdiepingen/ruimten die steeds maar 1 dag hebben bestaan mogen helemaal verwijderd worden uit de database, daar staat niets aan gekoppeld.
|
||||||
|
-- In een vorig (vergelijkbaar script) werden al zaken verwijderd die 1 dag na aanmaak waren verwijderd.
|
||||||
|
-- Maar er zijn ook gebouwen/verdiepingen/ruimten die nog sneller zijn aangemaakt en verwijderd (soms wel binnen 2 minuten)
|
||||||
|
-- Daarvoor zal er een once script gemaakt worden, dit zorgt nu voor een onnodige performance-belasting.
|
||||||
|
-- Er zijn vanaf 16 september tot en met 30 september volgend aantal gebouwen/verdiepingen/ruimten die zijn aangemaakt en direct dezelfde dag ook zijn verwijderd:
|
||||||
|
-- 33.238 gebouwen;
|
||||||
|
-- 145.621 verdiepingen;
|
||||||
|
-- 145.621 ruimten;
|
||||||
|
|
||||||
|
DEFINE thisfile = 'CSUN#90600_verwijderenALG_samedaydelete.SQL'
|
||||||
|
DEFINE dbuser = '^CSUN'
|
||||||
|
|
||||||
|
SET ECHO ON
|
||||||
|
SET DEFINE ON
|
||||||
|
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
||||||
|
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
|
||||||
|
WHENEVER SQLERROR CONTINUE;
|
||||||
|
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
|
||||||
|
SPOOL &fcltlogfile
|
||||||
|
WHENEVER SQLERROR EXIT;
|
||||||
|
SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL;
|
||||||
|
WHENEVER SQLERROR CONTINUE;
|
||||||
|
PROMPT &fcltcusterr
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
------ payload begin ------
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
v_min_date DATE := TO_DATE('16-09-2025','DD-MM-YYYY');
|
||||||
|
BEGIN
|
||||||
|
/* 1) RUIMTES eerst */
|
||||||
|
DELETE FROM alg_ruimte r
|
||||||
|
WHERE TRUNC(r.alg_ruimte_aanmaak) = TRUNC(r.alg_ruimte_verwijder)
|
||||||
|
-- AND r.alg_ruimte_key NOT IN (
|
||||||
|
-- SELECT alg_ruimte_key
|
||||||
|
-- FROM prs_v_perslidwerkplek_gegevens)
|
||||||
|
AND r.alg_ruimte_aanmaak >= v_min_date;
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/* 2) VERDIEPINGEN daarna (alleen als er geen ruimtes meer onder hangen) */
|
||||||
|
DELETE FROM alg_verdieping v
|
||||||
|
WHERE TRUNC(v.alg_verdieping_aanmaak) = TRUNC(v.alg_verdieping_verwijder)
|
||||||
|
-- AND v.alg_verdieping_key NOT IN (
|
||||||
|
-- SELECT alg_verdieping_key
|
||||||
|
-- FROM prs_v_perslidwerkplek_gegevens)
|
||||||
|
AND v.alg_verdieping_aanmaak >= v_min_date;
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/* 3) GEBOUWEN tot slot (alleen als er geen verdiepingen meer onder hangen) */
|
||||||
|
DELETE FROM alg_gebouw g
|
||||||
|
WHERE TRUNC(g.alg_gebouw_aanmaak) = TRUNC(g.alg_gebouw_verwijder)
|
||||||
|
-- AND g.alg_gebouw_key NOT IN (
|
||||||
|
-- SELECT alg_gebouw_key
|
||||||
|
-- FROM prs_v_perslidwerkplek_gegevens)
|
||||||
|
AND g.alg_gebouw_aanmaak >= v_min_date;
|
||||||
|
COMMIT;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
------ payload end ------
|
||||||
|
|
||||||
|
SET DEFINE OFF
|
||||||
|
BEGIN adm.systrackscriptId ('$Id$', 1); END;
|
||||||
|
/
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
|
SET ECHO OFF
|
||||||
|
SPOOL OFF
|
||||||
|
SET DEFINE ON
|
||||||
|
PROMPT Logfile of this upgrade is: &fcltlogfile
|
||||||
Reference in New Issue
Block a user