Skip to content

Commit f9ca246

Browse files
authored
Add Location partial indexes
1 parent 3d68b68 commit f9ca246

1 file changed

Lines changed: 40 additions & 4 deletions

File tree

Migration script/openIMIS migration v1.4.2 - 1.5.0.sql

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1877,16 +1877,14 @@ BEGIN TRY
18771877

18781878
CREATE UNIQUE CLUSTERED INDEX CI_tblLocations ON tblLocations (
18791879
[ValidityTo] ASC,
1880-
[LocationId] ASC,
1881-
[LocationCode] ASC,
1882-
[LocationName] ASC,
1883-
[LocationType] ASC
1880+
[LocationId] ASC
18841881
)
18851882
WITH
18861883
( PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
18871884
IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON
18881885
) ON liveArchive(ValidityTo)
18891886

1887+
18901888
ALTER TABLE [tblLocations] ADD CONSTRAINT PK_tblLocations PRIMARY KEY NONCLUSTERED (LocationId) ON [PRIMARY];
18911889
ALTER TABLE tblHFCatchment ADD CONSTRAINT [FK_tblHFCatchment_tblLocation] FOREIGN KEY(LocationId) REFERENCES [tblLocations] (LocationId)
18921890
ALTER TABLE tblProduct ADD CONSTRAINT [FK_tblProduct_tblLocations] FOREIGN KEY(LocationId) REFERENCES [tblLocations] (LocationId)
@@ -1905,6 +1903,44 @@ BEGIN CATCH
19051903
ROLLBACK TRANSACTION;
19061904
END CATCH
19071905

1906+
-- add partial indexes
1907+
CREATE NONCLUSTERED INDEX NCI_R_tblLocations ON tblLocations (
1908+
[LocationId] ASC,
1909+
[LocationCode] ASC)
1910+
INCLUDE(
1911+
[LocationName],
1912+
[ParentLocationId]
1913+
)
1914+
WHERE [ValidityTo] is NULL and [LocationType] = 'R'
1915+
1916+
CREATE NONCLUSTERED INDEX NCI_V_tblLocations ON tblLocations (
1917+
[LocationId] ASC,
1918+
[LocationCode] ASC)
1919+
INCLUDE(
1920+
[LocationName],
1921+
[ParentLocationId]
1922+
)
1923+
WHERE [ValidityTo] is NULL and [LocationType] = 'V'
1924+
1925+
CREATE NONCLUSTERED INDEX NCI_W_tblLocations ON tblLocations (
1926+
[LocationId] ASC,
1927+
[LocationCode] ASC)
1928+
INCLUDE(
1929+
[LocationName],
1930+
[ParentLocationId]
1931+
)
1932+
WHERE [ValidityTo] is NULL and [LocationType] = 'W'
1933+
1934+
CREATE NONCLUSTERED INDEX NCI_M_tblLocations ON tblLocations (
1935+
[LocationId] ASC,
1936+
[LocationCode] ASC)
1937+
INCLUDE(
1938+
[LocationName],
1939+
[ParentLocationId]
1940+
)
1941+
WHERE [ValidityTo] is NULL and [LocationType] = 'M'
1942+
1943+
19081944
BEGIN TRY
19091945
BEGIN TRANSACTION;
19101946
CREATE NONCLUSTERED INDEX NCI_tblUserDistrict_UserID ON tblUsersDistricts (ValidityTo,UserID)

0 commit comments

Comments
 (0)