Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: .NET Framework
.NET
.NET Standard
As coleções de esquemas comuns são as coleções de esquemas que são implementadas por todos os provedores gerenciados do .NET. Consulte um provedor gerenciado do .NET para determinar a lista de coleções de esquemas compatíveis chamando o método GetSchema sem argumentos ou com o nome da coleção de esquemas "MetaDataCollections". Esse método retornará uma DataTable com uma lista de coleções de esquemas compatíveis, o número de restrições ao qual cada uma dá suporte e o número de partes de identificador usado por elas. Essas coleções descrevem todas as colunas necessárias. Os provedores podem adicionar mais colunas, se desejarem. Por exemplo, o Provedor de Dados Microsoft SqlClient para SQL Server adiciona ParameterName à coleção de restrições.
Se um provedor não puder determinar o valor de uma coluna necessária, ele retornará nulo.
Para obter mais informações sobre como usar os métodos GetSchema, confira GetSchema e coleções de esquemas.
MetaDataCollections
Essa coleção expõe informações sobre todas as coleções de esquemas com suporte do provedor que é usado atualmente para se conectar ao banco de dados.
| ColumnName | Tipo de dados | Descrição |
|---|---|---|
| CollectionName | string |
O nome da coleção a ser passada ao método GetSchema para que a coleção seja retornada. |
| Número de restrições | int |
O número de restrições que podem ser especificadas para a coleção. |
| NúmeroDePartesDoIdentificador | int |
O número de partes no nome composto de identificador ou de objeto de banco de dados. Por exemplo, no SQL Server, o valor seria três para tabelas e quatro para colunas. |
DataSourceInformation
Essa coleção de esquemas expõe informações sobre a fonte de dados à qual o Provedor de Dados Microsoft SqlClient para SQL Server está conectado no momento.
| ColumnName | Tipo de dados | Descrição |
|---|---|---|
| CompositeIdentifierSeparatorPattern | string |
A expressão regular para identificar os separadores compostos em um identificador composto. Por exemplo, \. (para o SQL Server).Um identificador composto normalmente é o que é usado para um nome de objeto de banco de dados, por exemplo: pubs.dbo.authors ou pubs@dbo.authors.Para o SQL Server, use a expressão regular \.. |
| DataSourceProductName | string |
O nome do produto acessado pelo provedor, como "SQLServer". |
| DataSourceProductVersion | string |
Indica a versão do produto acessada pelo provedor, no formato nativo de fontes de dados e não no formato da Microsoft. Em alguns casos, DataSourceProductVersion e DataSourceProductVersionNormalized terão o mesmo valor. |
| DataSourceProductVersionNormalized | string |
Uma versão normalizada para a fonte de dados, de modo que ela possa ser comparada com String.Compare(). Esse formato é consistente para todas as versões do provedor a fim de impedir que a versão 10 seja classificada entre a versão 1 e a versão 2.Por exemplo, o SQL Server usa o formato nn.nn.nnnn típico da Microsoft.Em alguns casos, DataSourceProductVersion e DataSourceProductVersionNormalized terão o mesmo valor. |
| GroupByBehavior | GroupByBehavior | Especifica a relação entre as colunas em uma cláusula GROUP BY e as colunas não agregadas na lista de seleção. |
| IdentifierPattern | string |
Uma expressão regular que corresponde a um identificador e tem um valor de correspondência do identificador. Por exemplo, [A-Za-z0-9_#$]. |
| IdentifierCase | IdentifierCase | Indica se identificadores sem aspas são tratados como sensíveis a maiúsculas e minúsculas ou não. |
| OrderByColumnsInSelect | bool |
Especifica se as colunas em uma cláusula ORDER BY precisam estar na lista de seleção. Um valor true indica que é necessário que eles estejam na lista de seleção. Um valor false indica que não é necessário que eles estejam na lista de seleção. |
| ParameterMarkerFormat | string |
Uma cadeia de caracteres de formato que representa como formatar um parâmetro. Se os parâmetros nomeados forem compatíveis com a fonte de dados, o primeiro espaço reservado nessa cadeia de caracteres deverá ser o local em que o nome do parâmetro deve ser formatado. Por exemplo, se a fonte de dados espera que os parâmetros sejam nomeados e prefixados com um :, essa cadeia de caracteres será :{0}. Ao formatar esse parâmetro com um nome de p1, a cadeia de caracteres resultante será :p1.Se a fonte de dados esperar que os parâmetros sejam prefixados com o @, mas os nomes já os incluírem, essa cadeia de caracteres será "{0}", e o resultado da formatação de um parâmetro chamado @p1 será apenas @p1.Para as fontes de dados que não esperam parâmetros nomeados e esperam o uso do caractere ?, a cadeia de caracteres de formato pode ser especificada como ?, o que ignora o nome do parâmetro. |
| ParameterMarkerPattern | string |
Uma expressão regular que corresponde a um marcador de parâmetro. Ele terá um valor de correspondência do nome do parâmetro, se houver. Por exemplo, se houver suporte a parâmetros nomeados com um caractere inicial @ que será incluído no nome do parâmetro, o padrão seria: (\@[A-Za-z0-9_$#]*).No entanto, se houver suporte a parâmetros nomeados com um : como caractere inicial, e ele não fizer parte do nome do parâmetro, o padrão seria: :([A-Za-z0-9_$#]\*).Se a fonte de dados não der suporte a parâmetros nomeados, esse padrão será ?. |
| ParameterNameMaxLength | int |
O tamanho máximo de um nome de parâmetro em caracteres. O Visual Studio espera que, se houver suporte para nomes de parâmetro, o valor mínimo para o tamanho máximo será de 30 caracteres. Se a fonte de dados não der suporte a parâmetros nomeados, essa propriedade retornará zero. |
| ParameterNamePattern | string |
Uma expressão regular que corresponde aos nomes de parâmetros válidos. Fontes de dados diferentes têm regras diferentes em relação aos caracteres que podem ser usados como nomes de parâmetros. O Visual Studio espera que, se houver suporte para nomes de parâmetros, os caracteres \p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}\p{Nd} sejam o conjunto mínimo de caracteres compatíveis válidos para nomes de parâmetros. |
| QuotedIdentifierPattern | string |
Uma expressão regular que corresponde a um identificador entre aspas e tem um valor de correspondência do próprio identificador sem aspas. Por exemplo, se a fonte de dados tiver usado aspas duplas para identificar identificadores entre aspas, esse padrão será (([^\\"]\|\\"\\")*). |
| QuotedIdentifierCase | IdentifierCase | Indica se os identificadores entre aspas fazem distinção entre maiúsculas e minúsculas ou não. |
| StatementSeparatorPattern | string |
Uma expressão regular que corresponde ao separador de comandos. |
| StringLiteralPattern | string |
Uma expressão regular que corresponde a um literal de cadeia de caracteres e tem como valor da correspondência o próprio literal. Por exemplo, se a fonte de dados usou aspas simples para identificar cadeias de caracteres, esse padrão será ('([^']\|'')*')' |
| Operadores de junção compatíveis | SupportedJoinOperators | Especifica quais tipos de instruções SQL de junção são compatíveis com a fonte de dados. |
Tipos de dados
Essa coleção de esquemas expõe informações sobre os tipos de dados compatíveis com o banco de dados ao qual o provedor está atualmente conectado.
| ColumnName | Tipo de dados | Descrição |
|---|---|---|
| TypeName | string |
O nome do tipo de dados específico do provedor. |
| ProviderDbType | int |
O valor do tipo específico do provedor que deve ser usado ao especificar o tipo de um parâmetro. Por exemplo, SqlDbType.Money. |
| Tamanho da coluna | long |
O comprimento de uma coluna ou parâmetro não numérico. Esse valor se refere ao máximo ou ao comprimento definido para esse tipo pelo provedor. Para dados de caracteres, esse valor é o comprimento máximo ou definido, em unidades, conforme definido pela fonte de dados. Para tipos de dados de data e hora, esse valor é o comprimento da representação em string (assumindo a precisão máxima permitida do componente de segundos fracionários). Se o tipo de dados for numérico, esse valor será o limite superior na precisão máxima do tipo de dados. |
| CreateFormat | string |
Formatar cadeia de caracteres que representa como adicionar esta coluna a uma instrução de definição de dados, como CREATE TABLE. Cada elemento da matriz CreateParameter deve ser representado por um "marcador de parâmetro" na cadeia de caracteres de formato.Por exemplo, o tipo de dados SQL DECIMAL exige uma precisão e uma escala. Nesse caso, a cadeia de caracteres de formato será DECIMAL({0},{1}). |
| Criar parâmetros | string |
Os parâmetros de criação que precisam ser especificados ao criar uma coluna desse tipo de dados. Cada parâmetro de criação é listado na cadeia de caracteres, separado por uma vírgula na ordem em que deve ser fornecido. Por exemplo, o tipo de dados SQL DECIMAL exige uma precisão e uma escala. Nesse caso, os parâmetros de criação devem conter a cadeia de caracteres "precisão, escala". Em um comando de texto, para criar uma coluna DECIMAL com uma precisão igual a 10 e uma escala igual a 2, o valor da coluna CreateFormat poderá ser DECIMAL({0},{1}) e a especificação de tipo completa será DECIMAL(10,2). |
| Tipo de dados | string |
O nome do tipo .NET correspondente ao tipo de dados. |
| IsAutoincrementable | bool |
true – Os valores desse tipo de dados podem ser incrementados automaticamente.false – Os valores desse tipo de dados podem não ser incrementados automaticamente.Essa propriedade apenas indica se uma coluna desse tipo de dados pode ser incrementada automaticamente, não que todas as colunas desse tipo sejam incrementadas automaticamente. |
| IsBestMatch | bool |
true - O tipo de dados é a correspondência mais adequada entre os tipos de dados no repositório de dados e o tipo de dados .NET indicado pelo valor da coluna DataType.false – O tipo de dados não é o mais adequado.Para cada conjunto de linhas no qual o valor da coluna DataType for idêntico, a coluna IsBestMatch será definida como true em apenas uma linha. |
| IsCaseSensitive | bool |
true – O tipo de dados é um tipo de caractere e diferencia maiúsculas de minúsculas.false - O tipo de dados não é um tipo de caractere ou não diferencia maiúsculas de minúsculas. |
| IsFixedLength | bool |
true – Colunas desse tipo de dados criadas pela DDL (linguagem de definição de dados) terão um comprimento fixo.false – Colunas desse tipo de dados criadas pela DDL terão um comprimento variável.DBNull.Value – Não se sabe se o provedor mapeará esse campo com uma coluna de comprimento fixo ou variável. |
| IsFixedPrecisionScale | bool |
true – O tipo de dados tem uma precisão e uma escala fixas.false – O tipo de dados não tem uma precisão e uma escala fixas. |
| IsLong | bool |
true – O tipo de dados contém dados muito longos; a definição de dados muito longos é específica do provedor.false – O tipo de dados não contém dados muito longos. |
| IsNullable | bool |
true - O tipo de dados é anulável.false – O tipo de dados não permite valores nulos.DBNull.Value - Não se sabe se o tipo de dados é anulável. |
| IsSearchable | bool |
true – O tipo de dados pode ser usado em uma cláusula WHERE com qualquer operador, exceto o predicado LIKE.false – O tipo de dados não pode ser usado em uma cláusula WHERE com nenhum operador, exceto o predicado LIKE. |
| Pode ser pesquisado com LIKE | bool |
true – O tipo de dados pode ser usado com o predicado LIKE.false – O tipo de dados não pode ser usado com o predicado LIKE. |
| IsUnsigned | bool |
true - O tipo de dados é não assinado.false - O tipo de dados tem sinal.DBNull.Value – Não se aplica ao tipo de dados. |
| MaximumScale | short |
Se o indicador de tipo for um tipo numérico, esse valor será o número máximo de dígitos permitidos à direita do ponto decimal. Do contrário, esse valor será DBNull.Value. |
| Escala mínima | short |
Se o indicador de tipo for um tipo numérico, esse valor será o número mínimo de dígitos permitidos à direita do ponto decimal. Do contrário, esse valor será DBNull.Value. |
| IsConcurrencyType | bool |
true – O tipo de dados é atualizado pelo banco de dados sempre que a linha é alterada e o valor da coluna é diferente de todos os valores anteriores.false – Esse tipo de dado não é atualizado pelo banco de dados sempre que a linha é alterada.DBNull.Value – O banco de dados não dá suporte a esse tipo de dado. |
| IsLiteralSupported | bool |
true – O tipo de dados pode ser expresso como um literal.false – O tipo de dados não pode ser representado como um literal. |
| LiteralPrefix | string |
O prefixo aplicado a um literal específico. |
| LiteralSuffix | string |
O sufixo aplicado a um literal específico. |
Restrições
Essa coleção de esquemas forneceu informações sobre as restrições suportadas pelo provedor atualmente usado para se conectar ao banco de dados.
| ColumnName | Tipo de dados | Descrição |
|---|---|---|
| CollectionName | string |
O nome da coleção à qual essas restrições se aplicam. |
| RestrictionName | string |
O nome da restrição na coleção. |
| RestrictionDefault | string |
Ignorado. |
| Número de restrição | int |
A localização real nas restrições de coleções em que essa restrição específica se enquadra. |
Palavras reservadas
Essa coleção de esquemas expõe informações sobre as palavras reservadas pelo banco de dados ao qual o provedor está atualmente conectado.
| ColumnName | Tipo de dados | Descrição |
|---|---|---|
| palavra reservada | string |
Palavra reservada específica do provedor. |