33 lines
3.1 KiB
Transact-SQL
33 lines
3.1 KiB
Transact-SQL
IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_TagAssignments_tblTags]') AND parent_object_id = OBJECT_ID(N'[dbo].[TagAssignments]'))
|
||
ALTER TABLE [dbo].[TagAssignments] DROP CONSTRAINT [FK_TagAssignments_tblTags]
|
||
GO
|
||
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TagAssignments]') AND type in (N'U'))
|
||
DROP TABLE [dbo].[TagAssignments]
|
||
GO
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TagAssignments]') AND type in (N'U'))
|
||
BEGIN
|
||
CREATE TABLE [dbo].[TagAssignments](
|
||
[ObjectID] [int] NOT NULL,
|
||
[ObjectType] [smallint] NOT NULL,
|
||
[TagID] [int] NOT NULL,
|
||
CONSTRAINT [IX_TagAssignments] UNIQUE NONCLUSTERED
|
||
(
|
||
[ObjectID] ASC,
|
||
[ObjectType] ASC,
|
||
[TagID] ASC
|
||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||
) ON [PRIMARY]
|
||
END
|
||
GO
|
||
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_TagAssignments_tblTags]') AND parent_object_id = OBJECT_ID(N'[dbo].[TagAssignments]'))
|
||
ALTER TABLE [dbo].[TagAssignments] WITH NOCHECK ADD CONSTRAINT [FK_TagAssignments_tblTags] FOREIGN KEY([TagID])
|
||
REFERENCES [dbo].[Tags] ([TagId])
|
||
GO
|
||
IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_TagAssignments_tblTags]') AND parent_object_id = OBJECT_ID(N'[dbo].[TagAssignments]'))
|
||
ALTER TABLE [dbo].[TagAssignments] CHECK CONSTRAINT [FK_TagAssignments_tblTags]
|
||
GO
|