From e6bb836e053913ec8a5930a6d51af1fa55eb08e2 Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Fri, 25 Feb 2011 11:37:22 -0500 Subject: [PATCH] Create interactive update script with improved DB schema check; udated installer with new features and styles --- SQL/mssql.initial.sql | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/SQL/mssql.initial.sql b/SQL/mssql.initial.sql index 3678858..4aa6fc9 100644 --- a/SQL/mssql.initial.sql +++ b/SQL/mssql.initial.sql @@ -16,7 +16,8 @@ [email] [varchar] (255) COLLATE Latin1_General_CI_AI NOT NULL , [firstname] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL , [surname] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL , - [vcard] [text] COLLATE Latin1_General_CI_AI NULL + [vcard] [text] COLLATE Latin1_General_CI_AI NULL , + [words] [text] COLLATE Latin1_General_CI_AI NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO @@ -194,6 +195,8 @@ CONSTRAINT [DF_contactgroupmembers_created] DEFAULT (getdate()) FOR [created] GO +CREATE INDEX [IX_contactgroupmembers_contact_id] ON [dbo].[contactgroupmembers]([contact_id]) ON [PRIMARY] +GO ALTER TABLE [dbo].[identities] ADD CONSTRAINT [DF_identities_user] DEFAULT ('0') FOR [user_id], @@ -291,8 +294,11 @@ ON DELETE CASCADE ON UPDATE CASCADE GO -ALTER TABLE [dbo].[contactgroupmembers] ADD CONSTRAINT [FK_contactgroupmembers_contact_id] - FOREIGN KEY ([contact_id]) REFERENCES [dbo].[contacts] ([contact_id]) - ON DELETE CASCADE ON UPDATE CASCADE +-- Use trigger instead of foreign key (#1487112) +-- "Introducing FOREIGN KEY constraint ... may cause cycles or multiple cascade paths." +CREATE TRIGGER [contact_delete_member] ON [dbo].[contacts] + AFTER DELETE AS + DELETE FROM [dbo].[contactgroupmembers] + WHERE [contact_id] IN (SELECT [contact_id] FROM deleted) GO -- Gitblit v1.9.1