ドロップ制約ステートメントを取得する次の SQL ステートメントがあります。
SELECT DISTINCT 'ALTER TABLE '+TABLE_NAME+' DROP CONSTRAINT '+CONSTRAINT_NAME AS 'DropConstraintStatement'
FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE
WHERE TABLE_NAME = 'USER';
このクエリの結果は次のとおりです。
- ALTER TABLE UNITS DROP CONSTRAINT FK_USER_TASK_ID
- ALTER TABLE UNITS DROP CONSTRAINT PK_USER
- ALTER TABLE UNITS DROP CONSTRAINT UQ_USER_NAME_VERSION
これらのステートメントを Java アプリケーション内で実行したいので、ドロップ主キー制約が次のように最後の位置になるようにこれらのステートメントを並べ替える必要があります。
- ALTER TABLE UNITS DROP CONSTRAINT FK_USER_TASK_ID
- ALTER TABLE UNITS DROP CONSTRAINT UQ_USER_NAME_VERSION
- ALTER TABLE UNITS DROP CONSTRAINT PK_USER
ネイティブ SQL でこれを行う良い可能性はありますか?