Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: .NET Framework
.NET
Standard
Typowe kolekcje schematów to kolekcje schematów implementowane przez poszczególnych dostawców zarządzanych platformy .NET. Możesz wysłać zapytanie do dostawcy zarządzanego platformy .NET, aby określić listę obsługiwanych kolekcji schematów, wywołując GetSchema metodę bez argumentów lub z nazwą kolekcji schematu "MetaDataCollections". Ta metoda zwróci DataTable zawierający listę obsługiwanych kolekcji schematów, liczbę ograniczeń, które każda z nich obsługuje, oraz liczbę używanych przez nie części identyfikatorów. Te kolekcje opisują wszystkie wymagane kolumny. Jeśli chcą, dostawcy mogą dodawać więcej kolumn. Na przykład dostawca danych Microsoft SqlClient dla programu SQL Server dodaje ParameterName do kolekcji ograniczeń.
Jeśli dostawca nie może określić wartości wymaganej kolumny, zwróci wartość null.
Aby uzyskać więcej informacji na temat używania GetSchema metod, zobacz GetSchema i Kolekcje schematów.
MetaDataCollections
Ta kolekcja udostępnia informacje o wszystkich kolekcjach schematów obsługiwanych przez dostawcę, aktualnie używanego dla połączenia z bazą danych.
| ColumnName | Typ danych | Description |
|---|---|---|
| Nazwa Kolekcji | string |
Nazwa kolekcji, która ma być przekazywana do GetSchema metody w celu zwrócenia kolekcji. |
| LiczbaOgraniczeń | int |
Liczba ograniczeń, które można określić dla kolekcji. |
| LiczbaCzęściIdentyfikatora | int |
Liczba części w nazwie obiektu złożonego identyfikatora/bazy danych. Na przykład w programie SQL Server wartość będzie wynosić 3 dla tabel i 4 kolumn. |
Informacje o źródle danych
Ta kolekcja schematów udostępnia informacje o źródle danych, z którymi jest obecnie połączony dostawca danych Microsoft SqlClient dla programu SQL Server.
| ColumnName | Typ danych | Description |
|---|---|---|
| WzorzecSeparatoraZłożonegoIdentyfikatora | string |
Wyrażenie regularne dopasowujące separatory złożone w identyfikatorze złożonym. Na przykład \. (dla programu SQL Server).Identyfikator złożony jest zwykle używany dla nazwy obiektu bazy danych, na przykład: pubs.dbo.authors lub pubs@dbo.authors.W przypadku programu SQL Server użyj wyrażenia \.regularnego . |
| NazwaProduktuŹródłaDanych | string |
Nazwa produktu, do których uzyskuje dostęp dostawca, na przykład "SQLServer". |
| WersjaProduktuŹródłaDanych | string |
Wskazuje wersję produktu dostępną przez dostawcę w formacie natywnym źródeł danych, a nie w formacie firmy Microsoft. W niektórych przypadkach DataSourceProductVersion i DataSourceProductVersionNormalized będzie to ta sama wartość. |
| DataSourceProductVersionNormalized | string |
Znormalizowana wersja źródła danych, tak aby można ją było porównać z wartością String.Compare(). Ten format jest spójny dla wszystkich wersji dostawcy, aby uniemożliwić sortowanie wersji 10 między wersją 1 i wersją 2.Na przykład program SQL Server używa typowego formatu firmy Microsoft nn.nn.nnnn .W niektórych przypadkach DataSourceProductVersion i DataSourceProductVersionNormalized będzie to ta sama wartość. |
| GroupByBehavior | GroupByBehavior | Określa relację między kolumnami w klauzuli GROUP BY i niegregowanymi kolumnami na liście wyboru. |
| WzorzecIdentyfikatora | string |
Wyrażenie regularne, które pasuje do identyfikatora i ma wartość dopasowania identyfikatora. Na przykład [A-Za-z0-9_#$]. |
| Identyfikator | IdentifierCase | Wskazuje, czy identyfikatory inne niż cytowane są traktowane jako rozróżniające wielkość liter, czy nie. |
| SortujWedługKolumnWSelect | bool |
Określa, czy kolumny w klauzuli ORDER BY muszą znajdować się na liście wyboru. Wartość true oznacza, że muszą znajdować się na liście wyboru. Wartość false wskazuje, że nie muszą znajdować się na liście wyboru. |
| ParametrMarkerFormat | string |
Ciąg formatu reprezentujący sposób formatowania parametru. Jeśli nazwane parametry są obsługiwane przez źródło danych, pierwszy symbol zastępczy w tym ciągu powinien być miejscem, w którym należy sformatować nazwę parametru. Na przykład, jeśli źródło danych oczekuje, że parametry będą nazwane i poprzedzone ciągiem :, to ten ciąg byłby :{0}. Podczas formatowania tego parametru o nazwie p1, wynikowy ciąg to :p1.Jeśli źródło danych oczekuje, że parametry zostaną poprzedzone prefiksem @, ale nazwy już zawierają je, ten ciąg będzie {0}, a wynikiem formatowania parametru o nazwie @p1 będzie @p1.W przypadku źródeł danych, które nie oczekują nazwanych parametrów i oczekują użycia ? znaku, można określić ciąg formatu jako ?, który zignoruje nazwę parametru. |
| ParametrMarkerPattern | string |
Wyrażenie regularne, które pasuje do znacznika parametru. Będzie mieć wartość dopasowania nazwy parametru, jeśli istnieje. Na przykład, jeśli nazwane parametry są obsługiwane z wiodącym znakiem @, który będzie uwzględniony w nazwie parametru, ten wzorzec będzie następujący: (\@[A-Za-z0-9_$#]*).Jeśli jednak nazwane parametry są obsługiwane z użyciem : jako znaku wprowadzającego i nie jest on częścią nazwy parametru, ten wzorzec będzie następujący: :([A-Za-z0-9_$#]\*).Jeśli źródło danych nie obsługuje nazwanych parametrów, ten wzorzec będzie następujący: ?. |
| Nazwa parametruMaxLength | int |
Maksymalna długość nazwy parametru w znakach. Program Visual Studio oczekuje, że jeśli nazwy parametrów są obsługiwane, minimalna wartość maksymalnej długości to 30 znaków. Jeśli źródło danych nie obsługuje nazwanych parametrów, ta właściwość zwraca zero. |
| ParametrNazwaWzorzec | string |
Wyrażenie regularne zgodne z prawidłowymi nazwami parametrów. Różne źródła danych mają różne reguły dotyczące znaków, które mogą być używane dla nazw parametrów. Program Visual Studio oczekuje, że jeśli nazwy parametrów są obsługiwane, znaki \p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}\p{Nd} stanowią minimalny obsługiwany zestaw znaków prawidłowych dla nazw parametrów. |
| WzorzecCytowanegoIdentyfikatora | string |
Wyrażenie regularne, które pasuje do identyfikatora cytowanego i ma wartość dopasowania samego identyfikatora bez cudzysłowów. Jeśli na przykład źródło danych użyło podwójnych cudzysłowów w celu zidentyfikowania identyfikatorów cytowanych, ten wzorzec będzie następujący: (([^\\"]\|\\"\\")*). |
| QuotedIdentifierCase | IdentifierCase | Wskazuje, czy identyfikatory cytowane są traktowane jako wrażliwe na wielkość liter, czy nie. |
| WzorzecSeparatoraInstrukcji | string |
Wyrażenie regularne, które pasuje do separatora instrukcji. |
| StringLiteralPattern | string |
Wyrażenie regularne, które pasuje do ciągu znaków i ma wartość dopasowania odpowiadającą samemu ciągowi. Jeśli na przykład źródło danych używało pojedynczych cudzysłowów do identyfikowania ciągów, ten wzorzec będzie następujący: ('([^']\|'')*')" |
| ObsługiwaneOperatoryŁączenia | SupportedJoinOperators | Określa, jakie typy instrukcji sprzężenia SQL są obsługiwane przez źródło danych. |
Typy danych
Ta kolekcja schematów udostępnia informacje o typach danych obsługiwanych przez bazę danych, z którą jest obecnie połączony dostawca.
| ColumnName | Typ danych | Description |
|---|---|---|
| NazwaTypu | string |
Nazwa typu danych specyficznego dla dostawcy. |
| ProviderDbType | int |
Wartość typu specyficznego dla dostawcy, która powinna być używana podczas określania typu parametru. Na przykład SqlDbType.Money. |
| Rozmiar kolumny | long |
Długość kolumny lub parametru nieliczbowego. Ta wartość odnosi się do maksymalnej lub długości zdefiniowanej dla tego typu przez dostawcę. W przypadku danych znaków ta wartość jest maksymalną lub zdefiniowaną długością w jednostkach zdefiniowanych przez źródło danych. W przypadku typów danych daty i godziny ta wartość jest długością reprezentacji ciągu (przy założeniu maksymalnej dozwolonej precyzji składnika ułamkowych sekund). Jeśli typ danych jest liczbowy, ta wartość jest górną granicą maksymalnej dokładności typu danych. |
| UtwórzFormat | string |
Ciąg formatu reprezentujący sposób dodawania tej kolumny do instrukcji definicji danych, takiej jak CREATE TABLE. Każdy element w tablicy CreateParameter powinien być reprezentowany przez znacznik parametru w formacie ciągu.Na przykład typ danych SQL DECIMAL wymaga dokładności i skali. W takim przypadku ciąg formatu to DECIMAL({0},{1}). |
| UtwórzParametry | string |
Parametry tworzenia, które należy określić podczas tworzenia kolumny tego typu danych. Każdy parametr tworzenia jest wymieniony w ciągu rozdzielony przecinkami w kolejności, w której mają zostać dostarczone. Na przykład typ danych SQL DECIMAL wymaga dokładności i skali. W takim przypadku parametry tworzenia powinny zawierać ciąg "precyzja, skala". W poleceniu tekstowym w celu utworzenia kolumny DECIMAL z dokładnością 10 i skali 2 wartość kolumny CreateFormat może wynosić DECIMAL({0},{1}) , a kompletna specyfikacja typu to DECIMAL(10,2). |
| Typ danych | string |
Nazwa typu danych platformy .NET. |
| CzyMożnaZwiększaćAutomatycznie | bool |
true — Wartości tego typu danych mogą być automatycznie zwiększane.false — Wartości tego typu danych mogą nie być automatycznie zwiększane.Ta właściwość jedynie wskazuje, czy kolumna tego typu danych może być automatycznie zwiększana, a nie, że wszystkie kolumny tego typu są automatycznie zwiększane. |
| IsBestMatch | bool |
true — Typ danych jest najlepszym dopasowaniem między wszystkimi typami danych w magazynie danych i typem danych platformy .NET wskazywanym przez wartość w kolumnie DataType .false — Typ danych nie jest najlepszym dopasowaniem.Dla każdego zestawu wierszy, w których wartość DataType kolumny jest taka sama, kolumna IsBestMatch jest ustawiona na true w jednym wierszu. |
| Uwzględnia wielkość liter | bool |
true — Typ danych jest typem znaku i uwzględnia wielkość liter.false — Typ danych nie jest typem znaku lub nie jest czuły na wielkość liter. |
| StałaDługość | bool |
true — Kolumny tego typu danych utworzone przez język definicji danych (DDL) będą mieć stałą długość.false — Kolumny tego typu danych utworzone przez DDL będą mieć zmienną długość.DBNull.Value — Nie wiadomo, czy dostawca będzie mapować to pole z kolumną o stałej długości lub zmiennej długości. |
| IsFixedPrecisionScale | bool |
true — Typ danych ma stałą precyzję i skalę.false — Typ danych nie ma stałej dokładności i skali. |
| IsLong | bool |
true - Typ danych zawiera bardzo długie dane; definicja bardzo długich danych jest specyficzna dla dostawcy.false — Typ danych nie zawiera bardzo długich danych. |
| IsNullable | bool |
true — Typ danych ma wartość null.false — Typ danych nie może zawierać wartości null.DBNull.Value — Nie wiadomo, czy typ danych ma wartość null. |
| IsSearchable | bool |
true - Typ danych może być używany w klauzuli WHERE z dowolnym operatorem z wyjątkiem predykatu LIKE.false - Nie można użyć typu danych w klauzuli WHERE z żadnym operatorem z wyjątkiem predykatu LIKE. |
| Można przeszukiwać za pomocą Like | bool |
true — Typ danych może być używany z predykatem LIKE.false - Nie można używać typu danych z predykatem LIKE. |
| IsUnsigned | bool |
true — Typ danych jest niepodpisany.false - Typ danych jest podpisany.DBNull.Value - Nie dotyczy typu danych. |
| Maksymalna skala | short |
Jeśli wskaźnik typu jest typem liczbowym, ta wartość jest maksymalną liczbą cyfr dozwoloną po prawej stronie przecinka dziesiętnego. W przeciwnym razie ta wartość to DBNull.Value. |
| Minimalna skala | short |
Jeśli wskaźnik typu jest typem liczbowym, ta wartość jest minimalną liczbą cyfr dozwoloną po prawej stronie przecinka dziesiętnego. W przeciwnym razie ta wartość to DBNull.Value. |
| TypWspółbieżności | bool |
true — Typ danych jest aktualizowany przez bazę danych za każdym razem, gdy wiersz jest zmieniany, a wartość kolumny różni się od wszystkich poprzednich wartości.false — Typ danych jest aktualizowany przez bazę danych za każdym razem, gdy wiersz jest zmieniany.DBNull.Value — Baza danych nie obsługuje tego typu danych. |
| IsLiteralSupported | bool |
true — Typ danych można wyrazić jako literał.false — Typ danych nie może być wyrażony jako literał. |
| LiteralPrefiks | string |
Prefiks zastosowany do danego literału. |
| LiterałSuffix | string |
Sufiks zastosowany do danego literału. |
Restrictions
Ta kolekcja schematów ujawniła informacje o ograniczeniach obsługiwanych przez dostawcę, który jest obecnie używany do nawiązywania połączenia z bazą danych.
| ColumnName | Typ danych | Description |
|---|---|---|
| Nazwa Kolekcji | string |
Nazwa kolekcji, do których mają zastosowanie te ograniczenia. |
| Nazwa ograniczeń | string |
Nazwa ograniczenia w kolekcji. |
| Domyślne Ograniczenie | string |
Ignorowane. |
| NumerOgraniczenia | int |
Rzeczywista lokalizacja tego szczególnego ograniczenia w ramach ograniczeń kolekcji. |
Zastrzeżone Słowa
Ta kolekcja schematów udostępnia informacje o słowach zarezerwowanych przez bazę danych, z którą jest obecnie połączony dostawca.
| ColumnName | Typ danych | Description |
|---|---|---|
| ReservedWord | string |
Słowo zarezerwowane specyficzne dla dostawcy. |