Skip to content

Commit ea5b5ec

Browse files
authored
Finish feature/OTC-568
OTC-568: Alter the InsureeId field in the tblInsureePolicy to NOT NULL to prevent null InsureeIds
2 parents b66e986 + 1bfdc35 commit ea5b5ec

File tree

2 files changed

+93
-2
lines changed

2 files changed

+93
-2
lines changed

sql/base/1_schema_tables.sql

+2-2
Original file line numberDiff line numberDiff line change
@@ -1452,8 +1452,8 @@ SET QUOTED_IDENTIFIER ON
14521452
GO
14531453
CREATE TABLE [dbo].[tblInsureePolicy](
14541454
[InsureePolicyId] [int] IDENTITY(1,1) NOT NULL,
1455-
[InsureeId] [int] NULL,
1456-
[PolicyId] [int] NULL,
1455+
[InsureeId] [int] NOT NULL,
1456+
[PolicyId] [int] NOT NULL,
14571457
[EnrollmentDate] [date] NULL,
14581458
[StartDate] [date] NULL,
14591459
[EffectiveDate] [date] NULL,

sql/migrations/1_migration_latest.sql

+91
Original file line numberDiff line numberDiff line change
@@ -3397,3 +3397,94 @@ BEGIN
33973397
ALTER TABLE [tblSubmittedPhotos] ALTER COLUMN [CHFID] NVARCHAR(50)
33983398
END
33993399
GO
3400+
3401+
--OTC-568
3402+
DROP INDEX [missing_index_181] ON [dbo].[tblInsureePolicy]
3403+
GO
3404+
3405+
DROP INDEX [missing_index_250] ON [dbo].[tblInsureePolicy]
3406+
GO
3407+
3408+
DROP INDEX [NCI_tblInsureePolicy_InsureeID] ON [dbo].[tblInsureePolicy]
3409+
GO
3410+
3411+
DROP INDEX [tblInsureePolicy_ValidityTo_EffectiveDate_ExpiryDate] ON [dbo].[tblInsureePolicy]
3412+
GO
3413+
3414+
DROP INDEX [missing_index_203] ON [dbo].[tblInsureePolicy]
3415+
GO
3416+
3417+
DROP INDEX [missing_index_356] ON [dbo].[tblInsureePolicy]
3418+
GO
3419+
3420+
DROP INDEX [NCI_tblInsureePolicy_PolicyID] ON [dbo].[tblInsureePolicy]
3421+
GO
3422+
3423+
--Delete all dirty data where InsureeId is null
3424+
DELETE FROM tblInsureePolicy WHERE InsureeId IS NULL
3425+
GO
3426+
3427+
IF COL_LENGTH(N'tblInsureePolicy', N'InsureeId') IS NOT NULL
3428+
ALTER TABLE tblInsureePolicy
3429+
ALTER COLUMN InsureeId INT NOT NULL
3430+
GO
3431+
3432+
IF COL_LENGTH(N'tblInsureePolicy', N'PolicyId') IS NOT NULL
3433+
ALTER TABLE tblInsureePolicy
3434+
ALTER COLUMN PolicyId INT NOT NULL
3435+
GO
3436+
3437+
CREATE NONCLUSTERED INDEX [missing_index_181] ON [dbo].[tblInsureePolicy]
3438+
(
3439+
[InsureeId] ASC,
3440+
[PolicyId] ASC
3441+
)
3442+
INCLUDE([EffectiveDate],[ExpiryDate],[ValidityTo]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3443+
GO
3444+
3445+
CREATE NONCLUSTERED INDEX [missing_index_250] ON [dbo].[tblInsureePolicy]
3446+
(
3447+
[InsureeId] ASC,
3448+
[ValidityTo] ASC,
3449+
[EffectiveDate] ASC,
3450+
[ExpiryDate] ASC
3451+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3452+
GO
3453+
3454+
CREATE NONCLUSTERED INDEX [NCI_tblInsureePolicy_InsureeID] ON [dbo].[tblInsureePolicy]
3455+
(
3456+
[InsureeId] ASC
3457+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3458+
GO
3459+
3460+
CREATE NONCLUSTERED INDEX [tblInsureePolicy_ValidityTo_EffectiveDate_ExpiryDate] ON [dbo].[tblInsureePolicy]
3461+
(
3462+
[ValidityTo] ASC,
3463+
[EffectiveDate] ASC,
3464+
[ExpiryDate] ASC
3465+
)
3466+
INCLUDE([InsureeId],[PolicyId]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF)
3467+
GO
3468+
3469+
CREATE NONCLUSTERED INDEX [missing_index_203] ON [dbo].[tblInsureePolicy]
3470+
(
3471+
[EffectiveDate] ASC,
3472+
[ValidityTo] ASC
3473+
)
3474+
INCLUDE([PolicyId]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3475+
GO
3476+
3477+
CREATE NONCLUSTERED INDEX [missing_index_356] ON [dbo].[tblInsureePolicy]
3478+
(
3479+
[PolicyId] ASC,
3480+
[ValidityTo] ASC,
3481+
[EffectiveDate] ASC,
3482+
[ExpiryDate] ASC
3483+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3484+
GO
3485+
3486+
CREATE NONCLUSTERED INDEX [NCI_tblInsureePolicy_PolicyID] ON [dbo].[tblInsureePolicy]
3487+
(
3488+
[PolicyId] ASC
3489+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [IndexesFG]
3490+
GO

0 commit comments

Comments
 (0)