EnVisageOnline/Main/Database/Scripts/20160321/01_PeopleResourceAllocation...

41 lines
3.0 KiB
Transact-SQL
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

USE [EnVisage]
GO
begin tran
IF NOT EXISTS(SELECT * FROM sys.columns
WHERE Name = N'TeamId' AND Object_ID = Object_ID(N'PeopleResourceAllocation'))
BEGIN
ALTER TABLE PeopleResourceAllocation ADD TeamId uniqueidentifier NULL
END
GO
UPDATE PeopleResourceAllocation SET PeopleResourceAllocation.TeamId = PR.TeamId
FROM PeopleResourceAllocation PRA
inner join PeopleResource PR ON PR.Id = PRA.PeopleResourceId
WHERE PRA.TeamId is null
GO
ALTER TABLE PeopleResourceAllocation ALTER COLUMN TeamId uniqueidentifier NOT NULL
GO
if not exists (select 1 from sys.foreign_keys where name = 'FK_PeopleResourceAllocation_Team')
begin
ALTER TABLE [dbo].[PeopleResourceAllocation] WITH CHECK ADD CONSTRAINT [FK_PeopleResourceAllocation_Team] FOREIGN KEY([TeamId])
REFERENCES [dbo].[Team] ([Id])
ALTER TABLE [dbo].[PeopleResourceAllocation] CHECK CONSTRAINT [FK_PeopleResourceAllocation_Team]
END
if exists (select 1 from sys.indexes where name = 'IX_PeopleResourceAllocation_U' and object_id = OBJECT_ID('PeopleResourceAllocation'))
begin
CREATE UNIQUE NONCLUSTERED INDEX [IX_PeopleResourceAllocation_U] ON [dbo].[PeopleResourceAllocation]
(
[WeekEndingDate] ASC,
[PeopleResourceId] ASC,
[TeamId] ASC,
[ScenarioId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
end
commit tran