Quiero crear una lista de columnas en SQL Server 2005 que tienen columnas de identidad y su tabla correspondiente en T-SQL.
Los resultados serían algo como:
TableName, ColumnName
Quiero crear una lista de columnas en SQL Server 2005 que tienen columnas de identidad y su tabla correspondiente en T-SQL.
Los resultados serían algo como:
TableName, ColumnName
Otra forma potencial de hacer esto para SQL Server, que tiene menos dependencia de las tablas del sistema (que están sujetas a cambios, de versión a versión) es usar las vistas INFORMATION_SCHEMA:
select COLUMN_NAME, TABLE_NAME
from INFORMATION_SCHEMA.COLUMNS
where COLUMNPROPERTY(object_id(TABLE_SCHEMA+'.'+TABLE_NAME), COLUMN_NAME, 'IsIdentity') = 1
order by TABLE_NAME
INFORMATION_SCHEMA.COLUMNS
contiene información para tablas y vistas simples y sugiero agregar TABLE_TYPE (uniéndose a INFORMATION_SCHEMA.TABLES) para la legibilidad del conjunto de resultados.sys.columns.is_identity = 1
p.ej,
fuente
Otra forma (para 2000/2005/2012/2014):
NOTA:
table_name_here
debería serschema.table
, a menos que el esquema seadbo
.fuente
En SQL 2005:
fuente
Esta consulta parece hacer el truco:
fuente
aquí hay una versión de trabajo para MSSQL 2000. He modificado el código de 2005 que se encuentra aquí: http://sqlfool.com/2011/01/identity-columns-are-you-nearing-the-limits/
fuente
Lista de tablas sin columna de identidad basada en la respuesta de Guillermo :
fuente
La siguiente consulta funciona para mí:
fuente
Creo que esto funciona para SQL 2000:
fuente
Esto funcionó para mí usando Sql Server 2008:
fuente
Utilizar este :
fuente
Esto funcionó para SQL Server 2005, 2008 y 2012. Descubrí que sys.identity_columns no contenía todas mis tablas con columnas de identidad.
En la página de documentación también se puede utilizar la columna de estado. También puede agregar el identificador de cuatro partes y funcionará en diferentes servidores.
Fuente: https://msdn.microsoft.com/en-us/library/ms186816.aspx
fuente
Por alguna razón, el servidor SQL guarda algunas columnas de identidad en diferentes tablas, el código que me funciona es el siguiente:
fuente