257 lines
4.9 KiB
Transact-SQL
257 lines
4.9 KiB
Transact-SQL
IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Projects]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] DROP CONSTRAINT [FK_Assignments_Projects]
|
|
|
|
GO
|
|
|
|
IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Resources]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] DROP CONSTRAINT [FK_Assignments_Resources]
|
|
|
|
GO
|
|
|
|
IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Roles]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] DROP CONSTRAINT [FK_Assignments_Roles]
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Assignments] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Assignments]') AND type in (N'U'))
|
|
|
|
DROP TABLE [dbo].[Assignments]
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Roles] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Roles]') AND type in (N'U'))
|
|
|
|
DROP TABLE [dbo].[Roles]
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Projects] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Projects]') AND type in (N'U'))
|
|
|
|
DROP TABLE [dbo].[Projects]
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Resources] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Resources]') AND type in (N'U'))
|
|
|
|
DROP TABLE [dbo].[Resources]
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Assignments] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
SET ANSI_NULLS ON
|
|
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Assignments]') AND type in (N'U'))
|
|
|
|
BEGIN
|
|
|
|
CREATE TABLE [dbo].[Assignments](
|
|
|
|
[ProjectId] [uniqueidentifier] NOT NULL,
|
|
|
|
[ResourceId] [int] NOT NULL,
|
|
|
|
[Assigned] [datetime] NOT NULL,
|
|
|
|
[Role] [int] NOT NULL,
|
|
|
|
[LastChanged] [timestamp] NOT NULL,
|
|
|
|
CONSTRAINT [PK_Assignments] PRIMARY KEY CLUSTERED
|
|
|
|
(
|
|
|
|
[ProjectId] ASC,
|
|
|
|
[ResourceId] ASC
|
|
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
|
|
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Roles] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
SET ANSI_NULLS ON
|
|
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING ON
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Roles]') AND type in (N'U'))
|
|
|
|
BEGIN
|
|
|
|
CREATE TABLE [dbo].[Roles](
|
|
|
|
[Id] [int] NOT NULL,
|
|
|
|
[Name] [varchar](50) NOT NULL,
|
|
|
|
[LastChanged] [timestamp] NOT NULL,
|
|
|
|
CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED
|
|
|
|
(
|
|
|
|
[Id] ASC
|
|
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
|
|
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING OFF
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Projects] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
SET ANSI_NULLS ON
|
|
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING ON
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Projects]') AND type in (N'U'))
|
|
|
|
BEGIN
|
|
|
|
CREATE TABLE [dbo].[Projects](
|
|
|
|
[Id] [uniqueidentifier] NOT NULL,
|
|
|
|
[Name] [varchar](50) NOT NULL,
|
|
|
|
[Started] [datetime] NULL,
|
|
|
|
[Ended] [datetime] NULL,
|
|
|
|
[Description] [varchar](max) NULL,
|
|
|
|
[LastChanged] [timestamp] NOT NULL,
|
|
|
|
CONSTRAINT [PK_Projects] PRIMARY KEY CLUSTERED
|
|
|
|
(
|
|
|
|
[Id] ASC
|
|
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
|
|
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING OFF
|
|
|
|
GO
|
|
|
|
/****** Object: Table [dbo].[Resources] Script Date: 12/06/2005 11:11:16 ******/
|
|
|
|
SET ANSI_NULLS ON
|
|
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING ON
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Resources]') AND type in (N'U'))
|
|
|
|
BEGIN
|
|
|
|
CREATE TABLE [dbo].[Resources](
|
|
|
|
[Id] [int] IDENTITY(1,1) NOT NULL,
|
|
|
|
[LastName] [varchar](50) NULL,
|
|
|
|
[FirstName] [varchar](50) NULL,
|
|
|
|
[LastChanged] [timestamp] NOT NULL,
|
|
|
|
CONSTRAINT [PK_Resources] PRIMARY KEY CLUSTERED
|
|
|
|
(
|
|
|
|
[Id] ASC
|
|
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
|
|
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
|
|
GO
|
|
|
|
SET ANSI_PADDING OFF
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Projects]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] WITH CHECK ADD CONSTRAINT [FK_Assignments_Projects] FOREIGN KEY([ProjectId])
|
|
|
|
REFERENCES [dbo].[Projects] ([Id])
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Resources]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] WITH CHECK ADD CONSTRAINT [FK_Assignments_Resources] FOREIGN KEY([ResourceId])
|
|
|
|
REFERENCES [dbo].[Resources] ([Id])
|
|
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Assignments_Roles]') AND parent_object_id = OBJECT_ID(N'[dbo].[Assignments]'))
|
|
|
|
ALTER TABLE [dbo].[Assignments] WITH CHECK ADD CONSTRAINT [FK_Assignments_Roles] FOREIGN KEY([Role])
|
|
|
|
REFERENCES [dbo].[Roles] ([Id])
|
|
|
|
GO
|
|
|