Udostępnij za pośrednictwem


sp_pkeys (języka Transact-SQL)

Zwraca informacje o klucz podstawowego dla pojedynczej tabela w bieżącym środowisku.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

sp_pkeys [ @table_name = ] 'name'     
      [ , [ @table_owner = ] 'owner' ] 
   [ , [ @table_qualifier = ] 'qualifier' ]

Argumenty

  • [ @table_name= ] 'name'
    Jest tabela , której informacje. name jest sysname, z braku domyślne.Dopasowanie do wzorca symbolu wieloznacznego nie jest obsługiwane.

  • [ @table_owner= ] 'owner'
    Określa właściciela tabela określonej tabela.ownerjest sysname, domyślna wartość NULL.Dopasowanie do wzorca symbolu wieloznacznego nie jest obsługiwane.Jeśli owner nie jest określony, stosuje się zasady domyślne tabela widoczność odpowiedniego DBMS .

    W SQL Server, jeżeli bieżący użytkownik jest właścicielem tabela o określonej nazwie, zwracane są kolumny tabela .Jeśli owner nie jest określony i bieżący użytkownik nie jest właścicielem tabela o określonym name, ta procedura szuka tabela o określonym name własnością właściciela bazy danych.Jeśli taki istnieje, zwracane są kolumny tabela .

  • [ @table_qualifier= ] 'qualifier'
    Jest tabela kwalifikator.qualifierjest sysname, domyślna wartość NULL.Różne produkty DBMS obsługuje trzy części nazw tabel (kwalifikator**.właściciel.**name).W SQL Server, to kolumna reprezentuje nazwę bazy danych.W przypadku niektórych produktów reprezentuje nazwa serwera środowisku bazy danych tabela.

Wartości kodów powrotnych

Brak

Zestawy wyników

Nazwa kolumny

Typ danych

Opis

TABLE_QUALIFIER

sysname

Nazwa tabela kwalifikator.To pole może być NULL.

TABLE_OWNER

sysname

Nazwa właściciela tabela .To pole zawsze zwraca wartość.

TABLE_NAME

sysname

Nazwa tabela.W SQL Server, ta kolumna reprezentuje nazwę tabela , wymienionych w sysobjects tabela.To pole zawsze zwraca wartość.

COLUMN_NAME

sysname

Nazwa kolumnadla każdej kolumna TABLE_NAME zwrócił.W SQL Server, ta kolumna reprezentuje nazwę kolumna , wymienionych w sys.columns tabela.To pole zawsze zwraca wartość.

KEY_SEQ

smallint

Kolejny numer kolumna w wielokolumnowym kluczpodstawowego.

PK_NAME

sysname

Identyfikator klucz podstawowego.Zwraca wartość NULL, jeśli nie ma zastosowania do danych źródło.

Uwagi

sp_pkeysZwraca informacje o kolumnach jawnie zdefiniowana z ograniczeniem klucza podstawowego.Ponieważ nie wszystkie systemy obsługują wyraźnie nazwane klucze podstawowe, implementer brama Określa, co stanowi podstawowy klucz.Należy zauważyć, że określenie klucz podstawowego odnosi się do logicznego podstawowego klucz tabela.Oczekuje się, że każdy klucz wymieniony jako logiczne klucz podstawowego ma indeks unikatowy zdefiniowane na nim.indeks unikatowy jest również zwracana w sp_statistics.

sp_pkeys procedura składowana jest równoważne z SQLPrimaryKeys w ODBC.wyniki zwracane są uporządkowane według TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, i KEY_SEQ.

Uprawnienia

Wymaga uprawnienie SELECT schematu.

Przykłady

Poniższy przykład pobiera klucz podstawowego dla HumanResources.Department tabela w AdventureWorks2008R2 bazy danych.

USE AdventureWorks2008R2;
GO
EXEC sp_pkeys @table_name = N'Department'
    ,@table_owner = N'HumanResources';