Kolekcje schematów programu SQL Server
Program Microsoft .NET Framework Dostawca danych dla programu SQL Server obsługuje dodatkowe kolekcje schematów oprócz typowych kolekcji schematów. Kolekcje schematów różnią się nieco w zależności od używanej wersji programu SQL Server. Aby określić listę obsługiwanych kolekcji schematów, wywołaj metodę GetSchema bez argumentów lub nazwę kolekcji schematu "MetaDataCollections". Spowoduje to zwrócenie DataTable obiektu z listą obsługiwanych kolekcji schematów, liczbą ograniczeń, które obsługują, oraz liczbą używanych przez nich części identyfikatorów.
Bazy danych
ColumnName | DataType | opis |
---|---|---|
Nazwa_bazy_danych | String | Nazwa bazy danych. |
Dbid | Int16 | Identyfikator bazy danych. |
create_date | DateTime | Data utworzenia bazy danych. |
Klucze obce
ColumnName | DataType | opis |
---|---|---|
CONSTRAINT_CATALOG | String | Katalog, do którego należy ograniczenie. |
CONSTRAINT_SCHEMA | String | Schemat zawierający ograniczenie. |
CONSTRAINT_NAME | String | Name. |
TABLE_CATALOG | String | Ograniczenie nazwy tabeli jest częścią. |
TABLE_SCHEMA | String | Schemat zawierający tabelę. |
TABLE_NAME | String | Nazwa tabeli |
CONSTRAINT_TYPE | String | Typ ograniczenia. Dozwolone jest tylko "KLUCZ OBCY". |
IS_DEFERRABLE | String | Określa, czy ograniczenie jest możliwe do odroczenia. Zwraca wartość NIE. |
INITIALLY_DEFERRED | String | Określa, czy ograniczenie jest początkowo odroczalne. Zwraca wartość NIE. |
Indeksy
ColumnName | DataType | opis |
---|---|---|
constraint_catalog | String | Wykaz, do którego należy indeks. |
constraint_schema | String | Schemat zawierający indeks. |
Constraint_name | String | Nazwa indeksu. |
Table_catalog | String | Nazwa tabeli, z która jest skojarzona indeks. |
Table_schema | String | Schemat zawierający tabelę, z którą jest skojarzony indeks. |
Nazwa_tabeli | String | Nazwa tabeli. |
Index_name | String | Nazwa indeksu. |
Indeksy (SQL Server 2008)
Począwszy od programu .NET Framework w wersji 3.5 z dodatkiem SP1 i programu SQL Server 2008, do kolekcji schematów Indeksy dodano następujące kolumny w celu obsługi nowych typów przestrzennych, strumienia plików i rozrzednych kolumn. Te kolumny nie są obsługiwane we wcześniejszych wersjach programów .NET Framework i SQL Server.
ColumnName | DataType | opis |
---|---|---|
Type_desc | String | Typ indeksu będzie jednym z następujących elementów: -STERTY -KLASTROWANY -NIEKLASTROWANY -XML -PRZESTRZENNEJ |
Kolumny indeksu
ColumnName | DataType | opis |
---|---|---|
constraint_catalog | String | Wykaz, do którego należy indeks. |
constraint_schema | String | Schemat zawierający indeks. |
Constraint_name | String | Nazwa indeksu. |
Table_catalog | String | Nazwa tabeli, z która jest skojarzona indeks. |
Table_schema | String | Schemat zawierający tabelę, z którą jest skojarzony indeks. |
Nazwa_tabeli | String | Nazwa tabeli. |
Column_name | String | Nazwa kolumny, z która jest skojarzona indeks. |
ordinal_position | Int32 | Położenie porządkowe kolumny. |
Keytype | Byte | Typ obiektu. |
Index_name | String | Nazwa indeksu. |
z konkretnym obiektem
ColumnName | DataType | opis |
---|---|---|
SPECIFIC_CATALOG | String | Określona nazwa wykazu. |
SPECIFIC_SCHEMA | String | Określona nazwa schematu. |
SPECIFIC_NAME | String | Określona nazwa wykazu. |
ROUTINE_CATALOG | String | Wykaz, do którego należy procedura składowana. |
ROUTINE_SCHEMA | String | Schemat zawierający procedurę składowaną. |
ROUTINE_NAME | String | Nazwa procedury składowanej. |
ROUTINE_TYPE | String | Zwraca metodę PROCEDURE dla procedur składowanych i FUNKCJI dla funkcji. |
UTWORZONO | DateTime | Czas utworzenia procedury. |
LAST_ALTERED | DateTime | Ostatni raz procedura została zmodyfikowana. |
Parametry procedury
ColumnName | DataType | opis |
---|---|---|
SPECIFIC_CATALOG | String | Nazwa katalogu procedury, dla której jest to parametr. |
SPECIFIC_SCHEMA | String | Schemat zawierający procedurę, dla której ten parametr jest częścią. |
SPECIFIC_NAME | String | Nazwa procedury, dla której ten parametr jest częścią. |
ORDINAL_POSITION | Int32 | Pozycja porządkowa parametru rozpoczynająca się od 1. Dla wartości zwracanej procedury jest to wartość 0. |
PARAMETER_MODE | String | Zwraca wartość IN, jeśli parametr wejściowy, OUT, jeśli parametr wyjściowy i INOUT, jeśli parametr wejściowy/wyjściowy. |
IS_RESULT | String | Zwraca wartość TAK, jeśli wskazuje wynik procedury, która jest funkcją. W przeciwnym razie zwraca wartość NIE. |
AS_LOCATOR | String | Zwraca wartość TAK, jeśli jest zadeklarowana jako lokalizator. W przeciwnym razie zwraca wartość NIE. |
PARAMETER_NAME | String | Nazwa parametru. Wartość NULL, jeśli odpowiada zwracanej wartości funkcji. |
DATA_TYPE | String | Typ danych dostarczony przez system. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Maksymalna długość znaków w znakach dla typów danych binarnych lub znaków. W przeciwnym razie zwraca wartość NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Maksymalna długość w bajtach dla typów danych binarnych lub znaków. W przeciwnym razie zwraca wartość NULL. |
COLLATION_CATALOG | String | Nazwa katalogu sortowania parametru. Jeśli nie jeden z typów znaków, zwraca wartość NULL. |
COLLATION_SCHEMA | String | Zawsze zwraca wartość NULL. |
COLLATION_NAME | String | Nazwa sortowania parametru. Jeśli nie jeden z typów znaków, zwraca wartość NULL. |
CHARACTER_SET_CATALOG | String | Nazwa katalogu zestawu znaków parametru. Jeśli nie jeden z typów znaków, zwraca wartość NULL. |
CHARACTER_SET_SCHEMA | String | Zawsze zwraca wartość NULL. |
CHARACTER_SET_NAME | String | Nazwa zestawu znaków parametru. Jeśli nie jeden z typów znaków, zwraca wartość NULL. |
NUMERIC_PRECISION | Byte | Precyzja przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwraca wartość NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Precyzja promienia przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwraca wartość NULL. |
NUMERIC_SCALE | Int32 | Skala przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwraca wartość NULL. |
DATETIME_PRECISION | Int16 | Precyzja w sekundach ułamkowych, jeśli typ parametru to datetime lub smalldatetime. W przeciwnym razie zwraca wartość NULL. |
INTERVAL_TYPE | String | NULL. Zarezerwowane do użytku w przyszłości przez program SQL Server. |
INTERVAL_PRECISION | Int16 | NULL. Zarezerwowane do użytku w przyszłości przez program SQL Server. |
Tabele
ColumnName | DataType | opis |
---|---|---|
TABLE_CATALOG | String | Wykaz tabeli. |
TABLE_SCHEMA | String | Schemat zawierający tabelę. |
TABLE_NAME | String | Nazwa tabeli. |
TABLE_TYPE | String | Typ tabeli. Może to być TABELA VIEW lub BASE. |
Kolumny
ColumnName | DataType | opis |
---|---|---|
TABLE_CATALOG | String | Wykaz tabeli. |
TABLE_SCHEMA | String | Schemat zawierający tabelę. |
TABLE_NAME | String | Nazwa tabeli. |
COLUMN_NAME | String | Nazwa kolumny. |
ORDINAL_POSITION | Int32 | Numer identyfikacyjny kolumny. |
COLUMN_DEFAULT | String | Wartość domyślna kolumny |
IS_NULLABLE | String | Wartość null kolumny. Jeśli ta kolumna zezwala na wartość NULL, ta kolumna zwraca wartość TAK. W przeciwnym razie nie jest zwracany. |
DATA_TYPE | String | Typ danych dostarczony przez system. |
CHARACTER_MAXIMUM_LENGTH | Int32 — Sql8, Int16 — Sql7 | Maksymalna długość, w znakach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_OCTET_LENGTH | Int32 — SQL8, Int16 — Sql7 | Maksymalna długość, w bajtach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION | Niepodpisany bajt | Precyzja przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Precyzja promienia przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_SCALE | Int32 | Skala przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
DATETIME_PRECISION | Int16 | Kod podtypu dla typów danych typu datetime i SQL-92 interval. W przypadku innych typów danych zwracana jest wartość NULL. |
CHARACTER_SET_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której znajduje się zestaw znaków, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_SET_SCHEMA | String | Zawsze zwraca wartość NULL. |
CHARACTER_SET_NAME | String | Zwraca unikatową nazwę zestawu znaków, jeśli ta kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
COLLATION_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której zdefiniowano sortowanie, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie ta kolumna ma wartość NULL. |
Kolumny (SQL Server 2008)
Począwszy od programu .NET Framework w wersji 3.5 z dodatkiem SP1 i programu SQL Server 2008, do kolekcji schematów Kolumn dodano następujące kolumny w celu obsługi nowych typów przestrzennych, strumienia plików i rozrzedów kolumn. Te kolumny nie są obsługiwane we wcześniejszych wersjach programów .NET Framework i SQL Server.
ColumnName | DataType | opis |
---|---|---|
IS_FILESTREAM | String | TAK, jeśli kolumna ma atrybut FILESTREAM. NIE, jeśli kolumna nie ma atrybutu FILESTREAM. |
IS_SPARSE | String | TAK, jeśli kolumna jest kolumną rozrzedliwą. NIE, jeśli kolumna nie jest kolumną rozrzedliwą. |
IS_COLUMN_SET | String | TAK, jeśli kolumna jest kolumną zestawu kolumn. NIE, jeśli kolumna nie jest kolumną zestawu kolumn. |
AllColumns (SQL Server 2008)
Począwszy od programu .NET Framework w wersji 3.5 z dodatkiem SP1 i programu SQL Server 2008, kolekcja schematów AllColumns została dodana do obsługi kolumn rozrzednych. Funkcja AllColumns nie jest obsługiwana we wcześniejszych wersjach programów .NET Framework i SQL Server.
Funkcja AllColumns ma te same ograniczenia i wynikowy schemat DataTable co kolekcja schematów Kolumny. Jedyną różnicą jest to, że kolumny AllColumns zawierają kolumny, które nie są uwzględnione w kolekcji schematów Kolumny. W poniższej tabeli opisano te kolumny.
ColumnName | DataType | opis |
---|---|---|
TABLE_CATALOG | String | Wykaz tabeli. |
TABLE_SCHEMA | String | Schemat zawierający tabelę. |
TABLE_NAME | String | Nazwa tabeli. |
COLUMN_NAME | String | Nazwa kolumny. |
ORDINAL_POSITION | Int32 | Numer identyfikacyjny kolumny. |
COLUMN_DEFAULT | String | Wartość domyślna kolumny |
IS_NULLABLE | String | Wartość null kolumny. Jeśli ta kolumna zezwala na wartość NULL, ta kolumna zwraca wartość TAK. W przeciwnym razie nie jest zwracany. |
DATA_TYPE | String | Typ danych dostarczony przez system. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Maksymalna długość, w znakach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Maksymalna długość, w bajtach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION | Niepodpisany bajt | Precyzja przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Precyzja promienia przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_SCALE | Int32 | Skala przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
DATETIME_PRECISION | Int16 | Kod podtypu dla typów danych typu datetime i SQL-92 interval. W przypadku innych typów danych zwracana jest wartość NULL. |
CHARACTER_SET_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której znajduje się zestaw znaków, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_SET_SCHEMA | String | Zawsze zwraca wartość NULL. |
CHARACTER_SET_NAME | String | Zwraca unikatową nazwę zestawu znaków, jeśli ta kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
COLLATION_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której zdefiniowano sortowanie, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie ta kolumna ma wartość NULL. |
IS_FILESTREAM | String | TAK, jeśli kolumna ma atrybut FILESTREAM. NIE, jeśli kolumna nie ma atrybutu FILESTREAM. |
IS_SPARSE | String | TAK, jeśli kolumna jest kolumną rozrzedliwą. NIE, jeśli kolumna nie jest kolumną rozrzedliwą. |
IS_COLUMN_SET | String | TAK, jeśli kolumna jest kolumną zestawu kolumn. NIE, jeśli kolumna nie jest kolumną zestawu kolumn. |
ColumnSetColumns (SQL Server 2008)
Począwszy od programu .NET Framework w wersji 3.5 z dodatkiem SP1 i programu SQL Server 2008, kolekcja schematów ColumnSetColumns została dodana do obsługi kolumn rozrzednych. Kolumny ColumnSetColumns nie są obsługiwane we wcześniejszych wersjach programów .NET Framework i SQL Server. Kolekcja schematów ColumnSetColumns zwraca schemat dla wszystkich kolumn w zestawie kolumn. W poniższej tabeli opisano te kolumny.
ColumnName | DataType | opis |
---|---|---|
TABLE_CATALOG | String | Wykaz tabeli. |
TABLE_SCHEMA | String | Schemat zawierający tabelę. |
TABLE_NAME | String | Nazwa tabeli. |
COLUMN_NAME | String | Nazwa kolumny. |
ORDINAL_POSITION | Int32 | Numer identyfikacyjny kolumny. |
COLUMN_DEFAULT | String | Wartość domyślna kolumny |
IS_NULLABLE | String | Wartość null kolumny. Jeśli ta kolumna zezwala na wartość NULL, ta kolumna zwraca wartość TAK. W przeciwnym razie nie jest zwracany. |
DATA_TYPE | String | Typ danych dostarczony przez system. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Maksymalna długość, w znakach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Maksymalna długość, w bajtach, dla danych binarnych, danych znaków lub danych tekstowych i obrazów. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION | Niepodpisany bajt | Precyzja przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Precyzja promienia przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
NUMERIC_SCALE | Int32 | Skala przybliżonych danych liczbowych, dokładnych danych liczbowych, danych całkowitych lub danych pieniężnych. W przeciwnym razie zwracana jest wartość NULL. |
DATETIME_PRECISION | Int16 | Kod podtypu dla typów danych typu datetime i SQL-92 interval. W przypadku innych typów danych zwracana jest wartość NULL. |
CHARACTER_SET_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której znajduje się zestaw znaków, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
CHARACTER_SET_SCHEMA | String | Zawsze zwraca wartość NULL. |
CHARACTER_SET_NAME | String | Zwraca unikatową nazwę zestawu znaków, jeśli ta kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie zwracana jest wartość NULL. |
COLLATION_CATALOG | String | Zwraca wzorzec wskazujący bazę danych, w której zdefiniowano sortowanie, jeśli kolumna jest danymi znaków lub typem danych tekstowych. W przeciwnym razie ta kolumna ma wartość NULL. |
IS_FILESTREAM | String | TAK, jeśli kolumna ma atrybut FILESTREAM. NIE, jeśli kolumna nie ma atrybutu FILESTREAM. |
IS_SPARSE | String | TAK, jeśli kolumna jest kolumną rozrzedliwą. NIE, jeśli kolumna nie jest kolumną rozrzedliwą. |
IS_COLUMN_SET | String | TAK, jeśli kolumna jest kolumną zestawu kolumn. NIE, jeśli kolumna nie jest kolumną zestawu kolumn. |
Użytkownicy
ColumnName | DataType | opis |
---|---|---|
Identyfikator UID | Int16 | Identyfikator użytkownika, unikatowy w tej bazie danych. 1 jest właścicielem bazy danych. |
Nazwa_użytkownika | String | Nazwa użytkownika lub nazwa grupy, unikatowa w tej bazie danych. |
data utworzenia | DateTime | Data dodania konta. |
zaktualizowany | DateTime | Data ostatniej zmiany konta. |
Widoki
ColumnName | DataType | opis |
---|---|---|
TABLE_CATALOG | String | Wykaz widoku. |
TABLE_SCHEMA | String | Schemat zawierający widok. |
TABLE_NAME | String | Nazwa widoku. |
CHECK_OPTION | String | Typ Z OPCJĄ SPRAWDZANIA. Jest CASCADE, jeśli oryginalny widok został utworzony przy użyciu OPCJI ZAEWIDENCJONUJ. W przeciwnym razie zwracana jest wartość NONE. |
IS_UPDATABLE | String | Określa, czy widok jest aktualizowalny. Zawsze zwraca wartość NIE. |
Kolumny widoku
ColumnName | DataType | opis |
---|---|---|
VIEW_CATALOG | String | Wykaz widoku. |
VIEW_SCHEMA | String | Schemat zawierający widok. |
VIEW_NAME | String | Nazwa widoku. |
TABLE_CATALOG | String | Wykaz tabeli skojarzonej z tym widokiem. |
TABLE_SCHEMA | String | Schemat zawierający tabelę skojarzona z tym widokiem. |
TABLE_NAME | String | Nazwa tabeli skojarzonej z widokiem. Tabela podstawowa. |
COLUMN_NAME | String | Nazwa kolumny. |
UserDefinedTypes
ColumnName | DataType | opis |
---|---|---|
assembly_name | String | Nazwa pliku zestawu. |
udt_name | String | Nazwa klasy dla zestawu. |
version_major | Objekt | Numer wersji głównej. |
version_minor | Objekt | Numer wersji pomocniczej. |
version_build | Objekt | Numer kompilacji. |
version_revision | Objekt | Numer poprawki. |
culture_info | Objekt | Informacje o kulturze skojarzone z tym udT. |
public_key | Objekt | Klucz publiczny używany przez ten zestaw. |
is_fixed_length | Wartość logiczna | Określa, czy długość typu jest zawsze taka sama jak max_length. |
max_length | Int16 | Maksymalna długość typu w bajtach. |
Create_Date | DateTime | Data utworzenia/zarejestrowania zestawu. |
Permission_set_desc | String | Przyjazna nazwa zestawu uprawnień/poziomu zabezpieczeń. |