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 | 83 | |
| 84 | 84 | ALTER TABLE `document_fields` TYPE=InnoDB; |
| 85 | 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 | 93 | ALTER TABLE `document_fields` ADD CONSTRAINT `document_fields_ibfk_1` FOREIGN KEY (`parent_fieldset`) REFERENCES `fieldsets` (`id`) ON DELETE CASCADE; |
| 87 | 94 | ALTER TABLE `fieldsets` ADD COLUMN `is_complex` tinyint(1) NOT NULL default '0'; |
| 88 | 95 | ALTER TABLE `fieldsets` ADD COLUMN `is_complete` tinyint(1) NOT NULL default '1'; | ... | ... |