SQL SERVER ->> 查找自增列(IDENTITY)为INT的表剩余的自增数值剩余量
查看生产环境数据库有哪些表的自增列值可能超过INT的最大值,还剩余多少量
SELECT B.NAME table_name, A.NAME AS column_name, d.name AS data_type, C.rowcnt, IDENT_CURRENT(B.NAME) AS IDENT_CURR, POWER(CAST(2 AS BIGINT),31)-1-IDENT_CURRENT(B.NAME) AS remaining,1.*IDENT_CURRENT(B.NAME)/(POWER(CAST(2 AS BIGINT),31)-1) AS usage_rate FROM sys.columns a JOIN sys.types d ON a.system_type_id = d.system_type_id JOIN sys.objects b ON A.object_id = B.object_id JOIN sys.sysindexes c ON c.id = b.object_id AND c.indid IN (0,1) WHERE is_identity = 1 AND d.name='int' ORDER BY IDENT_CURR DESC