Skip to content

Instantly share code, notes, and snippets.

@tharikaGitHub
Created February 11, 2020 15:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tharikaGitHub/57bc47b5ac092baefb7ce9175fa8e2eb to your computer and use it in GitHub Desktop.
Save tharikaGitHub/57bc47b5ac092baefb7ce9175fa8e2eb to your computer and use it in GitHub Desktop.
REG_PROPERTY and REG_RESOURCE_PROPERTY Table Cleanup Scripts Type 2
CREATE TABLE TEMP_REG_RESOURCE_PROPERTY_ID(REG_PROPERTY_ID INTEGER);
-- Extract resource property (ID) created when versioning is disabled --
INSERT INTO TEMP_REG_RESOURCE_PROPERTY_ID(REG_PROPERTY_ID)
SELECT REG_PROPERTY_ID
FROM REG_RESOURCE_PROPERTY
WHERE REG_PATH_ID IN
(SELECT REG_PATH_ID
FROM REG_RESOURCE);
-- Extract resource property (ID) created when versioning is enabled --
INSERT INTO TEMP_REG_RESOURCE_PROPERTY_ID(REG_PROPERTY_ID)
SELECT REG_PROPERTY_ID
FROM REG_RESOURCE_PROPERTY
WHERE REG_VERSION IN
(SELECT REG_VERSION
FROM REG_RESOURCE);
-- Drop the foreign key constraint --
ALTER TABLE REG_RESOURCE_PROPERTY DROP FOREIGN KEY REG_RESOURCE_PROPERTY_FK_BY_TAG_ID;
-- delete all unwanted REG_RESOURCE_PROPERTY entries --
DELETE
FROM REG_RESOURCE_PROPERTY
WHERE REG_PROPERTY_ID NOT IN
(SELECT REG_PROPERTY_ID
FROM TEMP_REG_RESOURCE_PROPERTY_ID);
-- delete all unwanted REG_PROPERTY entries --
DELETE
FROM REG_PROPERTY
WHERE REG_ID NOT IN
(SELECT REG_PROPERTY_ID
FROM TEMP_REG_RESOURCE_PROPERTY_ID);
-- Insert back the foreign key constraint --
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
-- drop temporary table --
DROP TABLE TEMP_REG_RESOURCE_PROPERTY_ID;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment