@@ -204,12 +204,12 @@ USE tempdb;
204204 END AS [Securable Type or Class],
205205 CASE
206206 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' DATABASE' THEN PS .name COLLATE DATABASE_DEFAULT
207- WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' OBJECT_OR_COLUMN' THEN schema_name( OB . schema_id )
207+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' OBJECT_OR_COLUMN' THEN OB_SC . name COLLATE DATABASE_DEFAULT
208208 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' SCHEMA' THEN P3 .name COLLATE DATABASE_DEFAULT
209209 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' DATABASE_PRINCIPAL' THEN coalesce(PR .default_schema_name , PE .name )
210210 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' ASSEMBLY' THEN P4 .name COLLATE DATABASE_DEFAULT
211- WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' TYPE' THEN schema_name( TP . schema_id )
212- WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' XML_SCHEMA_COLLECTION' THEN schema_name( XS . schema_id )
211+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' TYPE' THEN TP_SC . name COLLATE DATABASE_DEFAULT
212+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' XML_SCHEMA_COLLECTION' THEN XS_SC . name COLLATE DATABASE_DEFAULT
213213 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' MESSAGE_TYPE' THEN P5 .name COLLATE DATABASE_DEFAULT
214214 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' SERVICE_CONTRACT' THEN P6 .name COLLATE DATABASE_DEFAULT
215215 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' SERVICE' THEN P7 .name COLLATE DATABASE_DEFAULT
@@ -220,12 +220,12 @@ USE tempdb;
220220 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' ASYMMETRIC_KEY' THEN PC .name COLLATE DATABASE_DEFAULT
221221 WHEN DP .class_desc COLLATE DATABASE_DEFAULT = ' CERTIFICATE' THEN PD .name COLLATE DATABASE_DEFAULT
222222 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND DB .name IS NOT NULL THEN PS .name COLLATE DATABASE_DEFAULT
223- WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND OB .name IS NOT NULL THEN schema_name( OB . schema_id )
223+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND OB .name IS NOT NULL THEN OB_SC . name COLLATE DATABASE_DEFAULT
224224 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND SC .name IS NOT NULL THEN P3 .name COLLATE DATABASE_DEFAULT
225225 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND PR .name IS NOT NULL THEN PR .default_schema_name COLLATE DATABASE_DEFAULT
226226 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND AY .name IS NOT NULL THEN P4 .name COLLATE DATABASE_DEFAULT
227- WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND TP .name IS NOT NULL THEN schema_name( TP . schema_id )
228- WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND XS .name IS NOT NULL THEN schema_name( XS . schema_id )
227+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND TP .name IS NOT NULL THEN TP_SC . name COLLATE DATABASE_DEFAULT
228+ WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND XS .name IS NOT NULL THEN XS_SC . name COLLATE DATABASE_DEFAULT
229229 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND MT .name IS NOT NULL THEN P5 .name COLLATE DATABASE_DEFAULT
230230 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND VC .name IS NOT NULL THEN P6 .name COLLATE DATABASE_DEFAULT
231231 WHEN DP .class_desc COLLATE DATABASE_DEFAULT IS NULL AND SV .name IS NOT NULL THEN P7 .name COLLATE DATABASE_DEFAULT
@@ -333,6 +333,8 @@ USE tempdb;
333333 LEFT OUTER JOIN [< TARGETDB> ].sys .all_columns CM
334334 ON CM.[object_id] = DP .major_id
335335 AND CM.[column_id] = DP .minor_id
336+ LEFT OUTER JOIN [< TARGETDB> ].sys .schemas OB_SC
337+ ON OB_SC .schema_id = OB .schema_id
336338
337339 FULL OUTER JOIN [< TARGETDB> ].sys .schemas SC
338340 ON DP .major_id = SC.[schema_id]
@@ -355,10 +357,14 @@ USE tempdb;
355357 FULL OUTER JOIN [< TARGETDB> ].sys .types TP
356358 ON DP .major_id = TP .user_type_id
357359 AND DP .class_desc = ' TYPE'
360+ LEFT OUTER JOIN [< TARGETDB> ].sys .schemas TP_SC
361+ ON TP_SC .schema_id = TP .schema_id
358362
359363 FULL OUTER JOIN [< TARGETDB> ].sys .xml_schema_collections XS
360364 ON DP .major_id = XS .xml_collection_id
361365 AND DP .class_desc = ' XML_SCHEMA_COLLECTION'
366+ LEFT OUTER JOIN [< TARGETDB> ].sys .schemas XS_SC
367+ ON XS_SC .schema_id = XS .schema_id
362368
363369 FULL OUTER JOIN [< TARGETDB> ].sys .service_message_types MT
364370 ON DP .major_id = MT .message_type_id
0 commit comments