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
注解
如何升级受影响的对象
以下有序步骤介绍将在六月份服务版本升级后要采取的纠正措施。
订单 | 受影响的对象 | 纠正措施 |
---|---|---|
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 |