Hi Folks,
In this article we are going to cover Identity Columns: Are You Nearing The Limits?.
In this post we are going to discuss following points:
- Problem Statement of SQL Script:
- Description of SQL Script:
- SQL Script Output Column
- SQL Script Code
- SQL Script Output Screenshot
- User Level to execute
Problem Statement of SQL Script:
How to find all the identity column in a table and how much percent is left for Limit?
Description of SQL Script:
This script will gives all the identity column in a table and how much percent is left for Limit.
SQL Script Output Column
SQL Script Code
DECLARE @threshold DECIMAL(3, 2) = .85; /* Create a temp table */ CREATE TABLE #identityStatus ( database_name VARCHAR(128) ,table_name VARCHAR(128) ,column_name VARCHAR(128) ,data_type VARCHAR(128) ,last_value BIGINT ,max_value BIGINT ); /* Use an undocumented command to run a SQL statement in each database on a server */ EXECUTE sp_msforeachdb ' Use [?]; Insert Into #identityStatus Select ''?'' As [database_name] , Object_Name(id.object_id, DB_ID(''?'')) As [table_name] , id.name As [column_name] , t.name As [data_type] , Cast(id.last_value As bigint) As [last_value] , Case When t.name = ''tinyint'' Then 255 When t.name = ''smallint'' Then 32767 When t.name = ''int'' Then 2147483647 When t.name = ''bigint'' Then 9223372036854775807 End As [max_value] From sys.identity_columns As id Join sys.types As t On id.system_type_id = t.system_type_id Where id.last_value Is Not Null' ; /* Retrieve our results and format it all prettily */ SELECT database_name ,table_name ,column_name ,data_type ,last_value ,CASE WHEN last_value < 0 THEN 100 ELSE (1 - Cast(last_value AS FLOAT(4)) / max_value ) * 100 END AS [percentLeft] ,CASE WHEN Cast(last_value AS FLOAT(4)) / max_value >= @threshold THEN 'warning: approaching max limit' ELSE 'okay' END AS [id_status] FROM #identityStatus ORDER BY percentLeft; /* Clean up after ourselves */ DROP TABLE #identityStatus;
SQL Script Output Screenshot
User Level to execute
300
Hope you will like the Identity Columns: Are You Nearing The Limits?.
If you really like reading my blog and understood at least few thing then please don’t forget to subscribe my blog.
If you want daily link and analysis or interesting link go to following website which will give @ your inbox please subscribe our following link resource blog :
For More information related to BI World visit my Mentalist Blog
SQL Server Mentalist >> SQL Learning Blog
Business Intelligence Mentalist >> BI World
Infographic Mentalist >> Image worth explaining thousand Words
Microsoft Mentalist >> MVC,ASP.NET, WCF & LinQ
DBA Mentalist >>Advance SQL Server Blog
Microsoft BI Mentalist >> MS BI Development Update
Connect With me on
Filed under: Link, Microsoft SQL Server, MSBI, Optimization, Query, Script, SQL Mentalist, SQL PraRup, SQL Query, SQL Server, Technology,, TSQL, Vishal Pawar Tagged: DBA, Fast SQL, Microsoft SQL Server, SQL Help, SQL Mentalist, SQL Script, SQL Server, SQL Server 2008 R2, SQL Server 2012, SQL tips, SQL Tricks, TSQL, Vishal Pawar
