30 lines
1.6 KiB
Transact-SQL
30 lines
1.6 KiB
Transact-SQL
-- Create Table
|
|
IF OBJECT_ID(N'[dbo].[Prj_T_Timesheet]', N'U') IS NULL
|
|
BEGIN
|
|
CREATE TABLE [dbo].[Prj_T_Timesheet] (
|
|
[Id] UNIQUEIDENTIFIER NOT NULL CONSTRAINT [PK_Prj_T_Timesheet] PRIMARY KEY,
|
|
[TenantId] UNIQUEIDENTIFIER NULL,
|
|
[TaskId] UNIQUEIDENTIFIER NOT NULL,
|
|
[WorkDate] DATETIME2 NOT NULL,
|
|
[UserId] UNIQUEIDENTIFIER NULL,
|
|
[Description] NVARCHAR(500) NULL,
|
|
[Hours] DECIMAL(18, 2) NOT NULL CONSTRAINT [DF_Prj_T_Timesheet_Hours] DEFAULT (0),
|
|
[CreationTime] DATETIME2 NOT NULL CONSTRAINT [DF_Prj_T_Timesheet_CreationTime] DEFAULT (GETUTCDATE()),
|
|
[CreatorId] UNIQUEIDENTIFIER NULL,
|
|
[LastModificationTime] DATETIME2 NULL,
|
|
[LastModifierId] UNIQUEIDENTIFIER NULL,
|
|
[IsDeleted] BIT NOT NULL CONSTRAINT [DF_Prj_T_Timesheet_IsDeleted] DEFAULT (0),
|
|
[DeletionTime] DATETIME2 NULL,
|
|
[DeleterId] UNIQUEIDENTIFIER NULL
|
|
);
|
|
END
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1 FROM sys.foreign_keys WHERE name = N'FK_Prj_T_Timesheet_Task')
|
|
ALTER TABLE [dbo].[Prj_T_Timesheet] ADD CONSTRAINT [FK_Prj_T_Timesheet_Task]
|
|
FOREIGN KEY ([TaskId]) REFERENCES [dbo].[Prj_T_Task] ([Id]);
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = N'IX_Prj_T_Timesheet_TaskId_WorkDate' AND object_id = OBJECT_ID(N'[dbo].[Prj_T_Timesheet]'))
|
|
CREATE INDEX [IX_Prj_T_Timesheet_TaskId_WorkDate] ON [dbo].[Prj_T_Timesheet] ([TaskId] ASC, [WorkDate] DESC);
|
|
GO
|