You've already forked ssms-addin
mirror of
https://github.com/alex-bochkov/ssms-addin.git
synced 2026-06-15 16:57:06 +02:00
Create script-current-identity.sql
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DROP TABLE IF EXISTS #AllTables;
|
||||
|
||||
CREATE TABLE #AllTables (tableName varchar(300), identityValue VARCHAR(50));
|
||||
|
||||
DECLARE @AllDatabases AS TABLE (databaseName VARCHAR(128), RN int);
|
||||
INSERT INTO @AllDatabases
|
||||
SELECT name, ROW_NUMBER() OVER (ORDER BY name) AS RN
|
||||
FROM sys.databases
|
||||
WHERE database_id > 4
|
||||
|
||||
DECLARE @RowsTotal INT, @Row INT, @Cmd VARCHAR(MAX), @Database VARCHAR(128);
|
||||
|
||||
SELECT @RowsTotal = MAX(RN), @Row = 1 FROM @AllDatabases;
|
||||
|
||||
WHILE @Row <= @RowsTotal
|
||||
BEGIN
|
||||
|
||||
SELECT @Database = databaseName,
|
||||
@Cmd = '
|
||||
USE [' + databaseName + '];
|
||||
INSERT INTO #AllTables
|
||||
SELECT
|
||||
''['' + SCHEMA_NAME(schema_id) + ''].['' + name + '']'' AS FullTableName,
|
||||
IDENT_CURRENT(SCHEMA_NAME(schema_id) + ''.'' + name) AS CurrentValue
|
||||
FROM sys.tables
|
||||
WHERE OBJECTPROPERTY(object_id, ''TableHasIdentity'') = 1
|
||||
'
|
||||
FROM @AllDatabases WHERE RN = @Row
|
||||
|
||||
EXEC(@Cmd);
|
||||
|
||||
SELECT 'USE ['+@Database+']';
|
||||
SELECT 'DBCC CHECKIDENT (''' + tableName + ''', RESEED, ' + identityValue + ')'
|
||||
FROM #AllTables
|
||||
|
||||
DELETE FROM #AllTables;
|
||||
|
||||
SET @Row = @Row + 1;
|
||||
|
||||
END
|
||||
Reference in New Issue
Block a user