Commit 438beda41bfb2de61d711a52f8431e85d35e5bca
1 parent
43ce064e
KTS-1533
"Issues when trying to introduce db constraints during upgrades" Fixed. Deleting broken references prior to applying constraints. Reviewed by: Kevin Fourie git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@6199 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
7 additions
and
0 deletions
sql/mysql/upgrade/2.99.1/fieldsets.sql
| @@ -83,6 +83,13 @@ CREATE TABLE `zseq_fieldsets` ( | @@ -83,6 +83,13 @@ CREATE TABLE `zseq_fieldsets` ( | ||
| 83 | 83 | ||
| 84 | ALTER TABLE `document_fields` TYPE=InnoDB; | 84 | ALTER TABLE `document_fields` TYPE=InnoDB; |
| 85 | ALTER TABLE `document_fields` ADD INDEX `parent_fieldset` (`parent_fieldset`); | 85 | ALTER TABLE `document_fields` ADD INDEX `parent_fieldset` (`parent_fieldset`); |
| 86 | + | ||
| 87 | +-- CLEAROUT ANY BROKEN RECORDS PRIOR TO ASSIGNING CONSTRAINT | ||
| 88 | +DELETE FROM `document_fields` as df USING `document_fields` as df, fieldsets | ||
| 89 | + WHERE not exists(select 1 from `fieldsets` as f where df.parent_fieldset = f.id); | ||
| 90 | + | ||
| 91 | +-- ADD CONSTRAINT | ||
| 92 | + | ||
| 86 | ALTER TABLE `document_fields` ADD CONSTRAINT `document_fields_ibfk_1` FOREIGN KEY (`parent_fieldset`) REFERENCES `fieldsets` (`id`) ON DELETE CASCADE; | 93 | ALTER TABLE `document_fields` ADD CONSTRAINT `document_fields_ibfk_1` FOREIGN KEY (`parent_fieldset`) REFERENCES `fieldsets` (`id`) ON DELETE CASCADE; |
| 87 | ALTER TABLE `fieldsets` ADD COLUMN `is_complex` tinyint(1) NOT NULL default '0'; | 94 | ALTER TABLE `fieldsets` ADD COLUMN `is_complex` tinyint(1) NOT NULL default '0'; |
| 88 | ALTER TABLE `fieldsets` ADD COLUMN `is_complete` tinyint(1) NOT NULL default '1'; | 95 | ALTER TABLE `fieldsets` ADD COLUMN `is_complete` tinyint(1) NOT NULL default '1'; |