From 36d718c7ff4da3ca9d069048992d1a731facf5b7 Mon Sep 17 00:00:00 2001 From: Saurav Mishra Date: Thu, 26 Mar 2026 12:26:55 +0530 Subject: [PATCH 1/2] alter table of sammelan record --- .../db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql diff --git a/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql b/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql new file mode 100644 index 0000000..4617052 --- /dev/null +++ b/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql @@ -0,0 +1,7 @@ +USE db_iemr; + +ALTER TABLE sammelan_record +DROP INDEX uk_asha_month; + +ALTER TABLE sammelan_record +ADD UNIQUE KEY uk_asha_month (`asha_id`, `meeting_date`); \ No newline at end of file From a0cd2dd3410549718bb4a6a684ef87133fa1512f Mon Sep 17 00:00:00 2001 From: Saurav Mishra Date: Thu, 26 Mar 2026 14:01:47 +0530 Subject: [PATCH 2/2] alter table of sammelan record --- .../dbiemr/V69__migratio_of_ch_dbiemr.sql | 40 +++++++++++++++++-- 1 file changed, 36 insertions(+), 4 deletions(-) diff --git a/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql b/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql index 4617052..3c5e1a9 100644 --- a/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql +++ b/src/main/resources/db/migration/dbiemr/V69__migratio_of_ch_dbiemr.sql @@ -1,7 +1,39 @@ USE db_iemr; -ALTER TABLE sammelan_record -DROP INDEX uk_asha_month; +SET @dbname = 'db_iemr'; +SET @tablename = 'sammelan_record'; -ALTER TABLE sammelan_record -ADD UNIQUE KEY uk_asha_month (`asha_id`, `meeting_date`); \ No newline at end of file +-- Drop index if exists +SET @indexname = 'uk_asha_month'; +SET @preparedStatement = ( + SELECT IF( + (SELECT COUNT(*) + FROM INFORMATION_SCHEMA.STATISTICS + WHERE TABLE_SCHEMA = @dbname + AND TABLE_NAME = @tablename + AND INDEX_NAME = @indexname) > 0, + CONCAT('ALTER TABLE ', @dbname, '.', @tablename, ' DROP INDEX ', @indexname), + 'SELECT 1' + ) +); +PREPARE stmt FROM @preparedStatement; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; + +-- Add unique index if not exists +SET @indexname = 'uk_asha_month'; +SET @preparedStatement = ( + SELECT IF( + (SELECT COUNT(*) + FROM INFORMATION_SCHEMA.STATISTICS + WHERE TABLE_SCHEMA = @dbname + AND TABLE_NAME = @tablename + AND INDEX_NAME = @indexname) > 0, + 'SELECT 1', + CONCAT('ALTER TABLE ', @dbname, '.', @tablename, + ' ADD UNIQUE KEY uk_asha_month (asha_id, meeting_date)') + ) +); +PREPARE stmt FROM @preparedStatement; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; \ No newline at end of file