sys.dm_db_objects_impacted_on_version_change(Azure SQL 数据库)

适用于:Azure SQL 数据库 Azure SQL 托管实例

此数据库范围的系统视图旨在提供预警系统,以确定受Azure SQL 数据库中主要版本升级影响的对象。 可以在升级之前或之后使用此视图以获得受影响对象的完整枚举。 您需要在每个数据库中查询此视图,以获取有关整个服务器的完整帐户信息。

列名称 数据类型 说明
class int NOT NULL 将受影响的对象的类:

1 = 约束

7 = 索引和堆
class_desc nvarchar(60) NOT NULL 类的说明:

OBJECT_OR_COLUMN

INDEX
major_id int NOT NULL 约束的对象 ID,或包含索引或堆的表的对象 ID。
minor_id int NULL 约束的 NULL

索引和堆的 Index_id
dependency nvarchar(60) NOT NULL 导致约束或索引受影响的依赖项的说明。 同一值也用于在升级期间生成的警告。

示例:

空格 (对于内部函数)

geometry (对于系统 UDT)

geography::P arse (对于系统 UDT 方法)

权限

需要 VIEW DATABASE STATE 权限。

示例

以下示例演示了对sys.dm_db_objects_impacted_on_version_change的查询,以查找受升级到下一个主要服务器版本影响的对象

SELECT * FROM sys.dm_db_objects_disabled_on_version_change;  
GO  
class  class_desc        major_id    minor_id    dependency                       
------ ----------------- ----------- ----------- ----------   
1      OBJECT_OR_COLUMN  181575685   NULL        geometry                        
7      INDEX             37575172    1           geometry                        
7      INDEX             2121058592  1           geometry                        
1      OBJECT_OR_COLUMN  101575400   NULL        geometry     

注解

如何升级受影响的对象

以下有序步骤介绍将在六月份服务版本升级后要采取的纠正措施。

下单(O) 受影响的对象 纠正措施
1 索引 重新生成由sys.dm_db_objects_impacted_on_version_change标识的任何索引,例如:ALTER INDEX ALL ON <table> REBUILD

ALTER TABLE <table> REBUILD
2 Object 重新计算基础表中的几何图形和地理数据后,必须重新验证由sys.dm_db_objects_impacted_on_version_change标识的所有约束。 对于约束,使用 ALTER TABLE 进行重新验证。
例如:
ALTER TABLE <tab> WITH CHECK CHECK CONSTRAINT <constraint name>

ALTER TABLE <tab> WITH CHECK CONSTRAINT ALL