fix: support database collation in shadow scripts
This commit is contained in:
@@ -81,7 +81,7 @@ BEGIN
|
||||
FROM sys.objects object
|
||||
LEFT JOIN @expected_v3 expected
|
||||
ON expected.object_name = N'alg.' + object.name
|
||||
AND expected.object_type = object.type
|
||||
AND expected.object_type = object.type COLLATE DATABASE_DEFAULT
|
||||
WHERE object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND object.is_ms_shipped = 0
|
||||
AND object.parent_object_id = 0
|
||||
@@ -95,7 +95,7 @@ BEGIN
|
||||
LEFT JOIN sys.objects object
|
||||
ON object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND N'alg.' + object.name = expected.object_name
|
||||
AND object.type = expected.object_type
|
||||
AND object.type COLLATE DATABASE_DEFAULT = expected.object_type
|
||||
WHERE object.object_id IS NULL
|
||||
)
|
||||
THROW 51033, 'FT546 shadow upgrade refused: expected object is missing or has wrong type', 1;
|
||||
@@ -114,7 +114,7 @@ IF EXISTS (
|
||||
FROM sys.objects object
|
||||
LEFT JOIN @expected_v2 expected
|
||||
ON expected.object_name = N'alg.' + object.name
|
||||
AND expected.object_type = object.type
|
||||
AND expected.object_type = object.type COLLATE DATABASE_DEFAULT
|
||||
WHERE object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND object.is_ms_shipped = 0
|
||||
AND object.parent_object_id = 0
|
||||
@@ -128,7 +128,7 @@ IF EXISTS (
|
||||
LEFT JOIN sys.objects object
|
||||
ON object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND N'alg.' + object.name = expected.object_name
|
||||
AND object.type = expected.object_type
|
||||
AND object.type COLLATE DATABASE_DEFAULT = expected.object_type
|
||||
WHERE object.object_id IS NULL
|
||||
)
|
||||
THROW 51036, 'FT546 shadow upgrade refused: expected object is missing or has wrong type', 1;
|
||||
@@ -1332,7 +1332,7 @@ BEGIN TRY
|
||||
FROM sys.objects object
|
||||
LEFT JOIN @expected_v3_post expected
|
||||
ON expected.object_name = N'alg.' + object.name
|
||||
AND expected.object_type = object.type
|
||||
AND expected.object_type = object.type COLLATE DATABASE_DEFAULT
|
||||
WHERE object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND object.is_ms_shipped = 0
|
||||
AND object.parent_object_id = 0
|
||||
@@ -1346,7 +1346,7 @@ BEGIN TRY
|
||||
LEFT JOIN sys.objects object
|
||||
ON object.schema_id = SCHEMA_ID(N'alg')
|
||||
AND N'alg.' + object.name = expected.object_name
|
||||
AND object.type = expected.object_type
|
||||
AND object.type COLLATE DATABASE_DEFAULT = expected.object_type
|
||||
WHERE object.object_id IS NULL
|
||||
)
|
||||
THROW 51033, 'FT546 shadow upgrade refused: expected object is missing or has wrong type', 1;
|
||||
|
||||
Reference in New Issue
Block a user