¿Cómo puedo determinar si una columna es una columna de identidad en MSSQL 2000?

5 Kommentare

  1. 66

    También puede hacerlo de esta manera:

    select columnproperty(object_id('mytable'),'mycolumn','IsIdentity')

    Devuelve 1 si es una identidad, 0 si no.

  2. 19
    sp_help tablename 

    En la salida de buscar algo como esto:

     Identity     Seed     Increment     Not For Replication    
     -----------  -------  ------------  ---------------------- 
     userid       15500    1             0        
  3. 4

    Ajustar el WHERE cláusula para satisfacer:

    select
        a.name as TableName,
        b.name as IdentityColumn
    from
        sysobjects a inner join syscolumns b on a.id = b.id
    where
        columnproperty(a.id, b.name, 'isIdentity') = 1
        and objectproperty(a.id, 'isTable') = 1
  4. 0

    Como la expansión en @Blogbeard la respuesta de

    Si te gusta puro consulta y no mediante las funciones integradas

    select col_name(sys.all_objects.object_id, column_id) as id from sys.identity_columns 
    join sys.all_objects on sys.identity_columns.object_id = sys.all_objects.object_id
    where sys.all_objects.name = 'system_files'
  5. 0

    La identidad es el valor que se utiliza para la primera fila cargada en la tabla.

    Hay un artículo de microsoft que puede proporcionar un buen conocimiento acerca de la Identidad:

    https://docs.microsoft.com/en-us/sql/t-sql/statements/create-table-transact-sql-identity-property?view=sql-server-2017

    Ahora, hay un par de maneras para que la identificación de la columna es una columna de identidad en una tabla:

    • Podemos utilizar consultas sql: select
      columnproperty(object_id(‘mitabla’),’micolumna’,’IsIdentity’)
    • sp_help tablename

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea