sp_special_columns (języka Transact-SQL)

Zwraca optymalny zestaw kolumn, które jednoznacznie identyfikują wiersze w tabela.Również zwraca kolumny automatycznie aktualizowany, gdy każda wartość w wierszu jest aktualizowany przez transakcję.

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

Składnia

sp_special_columns [ @table_name = ] 'table_name'   
     [ , [ @table_owner = ] 'table_owner' ] 
     [ , [ @qualifier = ] 'qualifier' ] 
     [ , [ @col_type = ] 'col_type' ] 
     [ , [ @scope = ] 'scope' ]
     [ , [ @nullable = ] 'nullable' ] 
     [ , [ @ODBCVer = ] 'ODBCVer' ] 
[ ; ]

Argumenty

  • [ @table_name=\] 'table_name'
    Nazwa tabela jest używane do zwracania informacji wykazu.namejest sysname, z braku domyślne.Dopasowanie do wzorca symbolu wieloznacznego nie jest obsługiwane.

  • [ @table_owner=\] 'table_owner'
    Jest właścicielem tabela tabela używane do zwracania informacji o katalogu.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 określonej name, ta procedura szuka tabela o określonym name własnością właściciela bazy danych.Jeśli istnieje w tabela kolumn są zwracane.

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

  • [ @col_type=\] 'col_type'
    Jest to typ kolumna .col_typejest char(1), z domyślnymi R.Typ R zwraca optymalne kolumna lub zestaw kolumn, umożliwiający, poprzez pobieranie wartości z kolumna lub kolumn, dla każdego wiersza w określonej tabela jednoznaczną identyfikację.kolumna może być albo pseudocolumn, specjalnie przeznaczone do tego celu lub kolumna lub kolumny wszelkich indeks unikatowy dla tabela.Typ V zwraca kolumna lub kolumn w określonej tabela, jeżeli występują, które są automatycznie aktualizowane przez danych źródło , gdy dowolna wartość wiersza jest aktualizowana przez żadnych transakcji.

  • [ @scope=\] 'scope'
    Jest minimalny wymagany zakres ROWID.scopejest char(1), z domyślnymi T.Zakres C Określa, że ROWID jest prawidłowy tylko w przypadku, gdy umieszczone w tym wierszu.Zakres T Określa, że ROWID jest prawidłowy dla transakcji.

  • [ @nullable=\] 'nullable'
    To, czy specjalne kolumn można zaakceptować wartość null .nullablejest char(1), z domyślnymi U.OOkreśla specjalne kolumn, które nie zezwalaj na wartooci null .UOkreśla kolumny, które są częściowo nullable.

  • [ @ODBCVer=\] 'ODBCVer'
    Jest używana wersja ODBC.ODBCVerjest int(4), domyślnie 2.Wskazuje ODBC w wersja 2.0.Aby uzyskać więcej informacji o różnicach między ODBC w wersja 2.0 i ODBC w wersja 3.0, zobacz Microsoft ODBC SQLSpecialColumns specyfikacją ODBC w wersja 3.0.

Wartości kodów powrotnych

Brak

Zestawy wyników

Nazwa kolumny

Typ danych

Opis

SCOPE

smallint

Rzeczywisty zakres identyfikator wiersza.Może to być 0, 1 lub 2.SQL Serverzawsze zwraca 0.To pole zawsze zwraca wartość.

0 = SQL_SCOPE_CURROW.Identyfikator wiersza zapewniona jest prawidłowy tylko wtedy, gdy umieszczone w danym wierszu.Reselect później przy użyciu wiersza, którego identyfikator nie może zwracać wiersza, jeśli wiersz został zaktualizowany lub usunięty przez inną transakcję.

1 = SQL_SCOPE_TRANSACTION.Identyfikator wiersza zapewniona jest ważne na czas trwania bieżącej transakcji.

2 = SQL_SCOPE_SESSION.Identyfikator wiersza zapewniona jest ważne na czas trwania sesja (granicami transakcji).

COLUMN_NAME

sysname

Nazwa kolumny dla każdej kolumna tablezwracane.To pole zawsze zwraca wartość.

DATA_TYPE

smallint

Typ danych SQL ODBC.

TYPE_NAME

sysname

źródłodanych — nazwa typu danych zależnych; for example, char, varchar, money, or text.

PRECISION

Int

Precyzję kolumna w danych źródło.To pole zawsze zwraca wartość.

LENGTH

Int

Długość w bajtach, wymagane dla typu danych w postaci binarnych w danych źródło, na przykład 10 dla char(10), 4- integeri 2- smallint.

SCALE

smallint

Skalę kolumna w danych źródło.Zwrócona wartość NULL dla typów danych na skalę, która nie jest stosowana.

PSEUDO_COLUMN

smallint

Wskazuje, czy kolumna jest pseudocolumn.SQL Serverzawsze zwraca wartość 1:

0 = SQL_PC_UNKNOWN

1 = SQL_PC_NOT_PSEUDO

2 = SQL_PC_PSEUDO

Uwagi

sp_special_columnsodpowiada SQLSpecialColumns w ODBC.wyniki zwracane są uporządkowane według zakresu.

Uprawnienia

Wymaga uprawnienie SELECT schematu.

Przykłady

Poniższy przykład zwraca informacje o kolumna unikatowo identyfikuje wierszy w HumanResources.Department tabela.

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