You've already forked ssms-addin
mirror of
https://github.com/alex-bochkov/ssms-addin.git
synced 2025-11-29 22:08:12 +02:00
43 lines
1.0 KiB
Transact-SQL
43 lines
1.0 KiB
Transact-SQL
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
|