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
 | |
| 
 |