Cuestión : Reseed todas las tablas en el DB usar DBCC CHECKIDENT en un comando

¿Tenemos unas par de bases de datos que vamos a querer reseed los campos de la identidad en cerca de 100 tablas a su alta razón actual de record.

The de esto somos que queremos mover una base de datos del par al “amo” y los campos de la identidad no han sido properly.

Is allí los medios de hacer esto para todas las tablas en una base de datos en vez de hacer cada tabla individual uno a la vez?

Thanks
class= del

Respuesta : Reseed todas las tablas en el DB usar DBCC CHECKIDENT en un comando

El código está abajo. Apenas uncomment el exec (y comenta hacia fuera la impresión, si está deseada).
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
fijar el nocount encendido

declarar la tabla de los @tables (
  identidad de la identificación internacional,
  sysname del tablename,
  sysname del columnName
)

declarar el @counter internacional
declarar el @count internacional
declarar nvarchar @newseed (20)
declarar el sysname del @tablename
declarar el sysname del @columnname
declarar el @sql varchar (máximo)
declarar el @sqlex varchar (máximo)
declarar el @sqlMax nvarchar (máximo)
declarar el @sqlMaxEx nvarchar (máximo)
DECLARAR EL @PVALUE     VARCHAR (250)
DECLARAR EL @PARAM      NVARCHAR (250)

fijar el @sql = “DBCC CHECKIDENT ('' @table '', RESEED, @value)”
fijar el @sqlMax = “@value=MAX SELECTO (el @pkfield) de @table”
FIJAR EL @PARAM = EL “@VALUE VARCHAR (250) HECHO SALIR”
 
insertar en @tables
seleccionar TABLE_NAME DISTINTO, COLUMN_NAME
de INFORMATION_SCHEMA.COLUMNS
donde TABLE_SCHEMA = “dbo”
y COLUMNPROPERTY (object_id (TABLE_NAME), COLUMN_NAME, “IsIdentity ") = 1
orden por TABLE_NAME
seleccionar el @count = el @@ROWCOUNT

fijar el @counter = 1
mientras que @counter  <>
           
Otras soluciones  
 
programming4us programming4us