Commit 438beda41bfb2de61d711a52f8431e85d35e5bca

Authored by conradverm
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
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';
... ...