Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Las colecciones de esquemas comunes son las colecciones de esquemas que implementa cada uno de los proveedores administrados de .NET Framework. Puede consultar un proveedor administrado de .NET Framework para determinar la lista de colecciones de esquemas admitidas llamando al GetSchema método sin argumentos o con el nombre de colección de esquemas "MetaDataCollections". Esto devolverá una DataTable con una lista de colecciones de esquemas admitidas, el número de restricciones que admite cada una y el número de partes de identificador que emplean. Estas colecciones describen todas las columnas necesarias. Los proveedores pueden agregar columnas adicionales si lo desean. Por ejemplo, SqlClient y OracleClient agregue ParameterName a la colección de restricciones.
Si un proveedor no puede determinar el valor de una columna necesaria, se devolverá NULL.
Para obtener más información sobre el uso de los GetSchema métodos, vea GetSchema y Schema Collections.
MetaDataCollections
Esta colección de esquemas expone información sobre todas las colecciones de esquemas compatibles con el proveedor administrado de .NET Framework que se usa actualmente para conectarse a la base de datos.
| NombreDeColumna | TipoDeDatos | Descripción |
|---|---|---|
| Nombre de la Colección | cuerda / cadena | Nombre de la colección que se pasa al método GetSchema para devolver la colección. |
| NúmeroDeRestricciones | Int | El número de restricciones que se pueden especificar para la colección. |
| NumberOfIdentifierParts | Int | El número de partes del identificador compuesto y nombre del objeto de base de datos. Por ejemplo, en SQL Server, sería 3 para las tablas y 4 para las columnas. En Oracle, sería 2 para las tablas y 3 para las columnas. |
Información de la Fuente de Datos
Esta colección de esquemas expone información sobre el origen de datos al que se conecta actualmente el proveedor administrado de .NET Framework.
| NombreDeColumna | TipoDeDatos | Descripción |
|---|---|---|
| CompositeIdentifierSeparatorPattern | cuerda / cadena | La expresión regular que va a hacer corresponder los separadores compuestos en un identificador compuesto. Por ejemplo, "\". (para SQL Server) o "@|\". (para Oracle). Un identificador compuesto suele ser lo que se usa para un nombre de objeto de base de datos, por ejemplo: pubs.dbo.authors o pubs@dbo.authors. Para SQL Server, use la expresión regular "\.". Para OracleClient, utilice "@|\.". Para ODBC, utilice el Catalog_name_separator. En OLE DB, use DBLITERAL_CATALOG_SEPARATOR o DBLITERAL_SCHEMA_SEPARATOR. |
| NombreDeProductoFuenteDeDatos | cuerda / cadena | Nombre del producto al que accede el proveedor, como "Oracle" o "SQLServer". |
| DataSourceProductVersion | cuerda / cadena | Indica la versión del producto al que tiene acceso el proveedor, en el formato nativo de los orígenes de datos y no en el formato de Microsoft. En algunos casos, DataSourceProductVersion y DataSourceProductVersionNormalized serán el mismo valor. En el caso de OLE DB y ODBC, estos siempre serán los mismos porque están asignados a la misma llamada de función en la API nativa. |
| DataSourceProductVersionNormalized | cuerda / cadena | Una versión normalizada del origen de datos, de forma que se puede comparar con String.Compare(). El formato de esto es coherente para todas las versiones del proveedor para evitar que la versión 10 se ordene entre la versión 1 y la versión 2.Por ejemplo, el proveedor de Oracle usa un formato de "nn.nn.nn.nn.nn.nn" para su versión normalizada, lo que hace que un origen de datos de Oracle 8i devuelva "08.01.07.04.01". SQL Server usa el formato "nn.nn.nnnn" típico de Microsoft. En algunos casos, DataSourceProductVersion y DataSourceProductVersionNormalized serán el mismo valor. En el caso de OLE DB y ODBC, estos siempre serán los mismos, ya que se asignan a la misma llamada de función en la API nativa subyacente. |
| GroupByBehavior | GroupByBehavior | Especifica la relación entre las columnas de una cláusula GROUP BY y las columnas no agregadas de la lista de selección. |
| IdentifierPattern | cuerda / cadena | Expresión regular que crea una correspondencia con un identificador y con un valor de coincidencia del identificador. Por ejemplo"[A-Za-z0-9_#$]". |
| IdentifierCase | IdentifierCase | Indica si los identificadores que no se incluyen entre comillas se usan con distinción de mayúsculas y minúsculas o no. |
| OrderByColumnsInSelect | booleano | Especifica si las columnas de una cláusula ORDER BY deben estar en la lista de selección. Un valor true indica que deben estar en la lista de selección, un valor false indica que no son necesarios para estar en la lista de selección. |
| ParameterMarkerFormat | cuerda / cadena | Una cadena de formato que representa cómo dar formato a un parámetro. Si el origen de datos admite parámetros con nombre, el primer marcador de posición de esta cadena debe estar donde se debe dar formato al nombre del parámetro. Por ejemplo, si el origen de datos espera que los parámetros se nombren y se les añada el prefijo ":", estos serían ":{0}". Al dar formato a esto con un nombre de parámetro de "p1", la cadena resultante es ":p 1". Si el origen de datos espera que los parámetros estén prefijos con '@', pero los nombres ya los incluyen, sería '{0}', y el resultado de dar formato a un parámetro denominado "@p1" simplemente sería "@p1". En el caso de los orígenes de datos que no esperan parámetros con nombre y esperan el uso del carácter '?', la cadena de formato se puede especificar simplemente como '?', que omitiría el nombre del parámetro. Para OLE DB, se devuelve "?". |
| ParameterMarkerPattern | cuerda / cadena | Una expresión regular que crea una correspondencia con un marcador de parámetro. Tendrá un valor de correspondencia del nombre del parámetro, si lo hay. Por ejemplo, si se admiten parámetros con nombre que comienzan con el carácter '@' que se incluirá en el nombre del parámetro, sería así: "(@[A-Za-z0-9_$#]*)". Sin embargo, si los parámetros con nombre se admiten con ":" como carácter inicial y no forma parte del nombre del parámetro, sería: ":([A-Za-z0-9_$#]*)". Por supuesto, si el origen de datos no admite parámetros con nombre, simplemente sería "?". |
| ParameterNameMaxLength | Int | La longitud máxima del nombre del parámetro en caracteres. Visual Studio espera que si se admiten nombres de parámetros, el valor mínimo de la longitud máxima sea 30 caracteres. Si el origen de datos no admite parámetros con nombre, esta propiedad devuelve cero. |
| ParameterNamePattern | cuerda / cadena | Una expresión regular que crea una correspondencia con los nombres de parámetros válidos. Los distintos orígenes de datos tienen reglas diferentes con respecto a los caracteres que se pueden usar para los nombres de parámetro. Visual Studio espera que, si se admiten nombres de parámetro, los caracteres "\p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}\p{Nd}" son el conjunto mínimo admitido de caracteres válidos para los nombres de parámetros. |
| QuotedIdentifierPattern | cuerda / cadena | Una expresión regular que crea una correspondencia con un identificador incluido entre comillas y que tiene un valor de correspondencia del propio identificador sin las comillas. Por ejemplo, si el origen de datos usaba comillas dobles para identificar identificadores entre comillas, sería: "(([^\"]|\"\")*)". |
| QuotedIdentifierCase | IdentifierCase | Indica si los identificadores incluidos entre comillas se tratan o no como con diferenciación entre mayúsculas y minúsculas. |
| StatementSeparatorPattern | cuerda / cadena | Una expresión regular que crea una correspondencia con el separador de instrucciones. |
| StringLiteralPattern | cuerda / cadena | Una expresión regular que crea una correspondencia con un literal de cadena y que tiene un valor de correspondencia del propio literal. Por ejemplo, si el origen de datos usaba comillas simples para identificar cadenas, sería: "('([^']|')*')"' |
| SupportedJoinOperators | SupportedJoinOperators | Especifica los tipos de instrucciones de unión SQL que admite el origen de datos. |
Datatypes
Esta colección de esquemas expone información sobre los tipos de datos admitidos por la base de datos a la que está conectado el proveedor administrado de .NET Framework.
| NombreDeColumna | TipoDeDatos | Descripción |
|---|---|---|
| NombreDeTipo | cuerda / cadena | El nombre del tipo de datos específico del proveedor. |
| ProviderDbType | Int | Valor de tipo específico del proveedor que se debe usar al especificar el tipo de un parámetro. Por ejemplo, SqlDbType.Money o OracleType.Blob. |
| TamañoDeColumna | largo | La longitud de una columna o parámetro no numérico hace referencia al máximo o a la longitud definida para este tipo por el proveedor. Para los datos de caracteres, esta es la longitud máxima o definida en unidades, definida por el origen de datos. Oracle tiene el concepto de especificar una longitud y, a continuación, especificar el tamaño de almacenamiento real para algunos tipos de datos de caracteres. Esto define solo la longitud en unidades para Oracle. En el caso de los tipos de datos de fecha y hora, esta es la longitud de la representación de cadena (suponiendo la precisión máxima permitida del componente fracciones de segundos). Si el tipo de datos es numérico, este es el límite superior en la precisión máxima del tipo de datos. |
| CreateFormat | cuerda / cadena | La cadena de formato que representa cómo agregar esta columna a una instrucción de definición de datos, como CREATE TABLE. Cada elemento de la matriz CreateParameter debe representarse mediante un "marcador de parámetro" en la cadena de formato. Por ejemplo, el tipo de datos SQL DECIMAL necesita una precisión y una escala. En este caso, la cadena de formato sería "DECIMAL({0},{1})". |
| CreateParameters | cuerda / cadena | Los parámetros de creación que se deben especificar al crear una columna de este tipo de datos. Cada parámetro de creación aparece en la cadena, separado por una coma en el orden en que se van a proporcionar. Por ejemplo, el tipo de datos SQL DECIMAL necesita una precisión y una escala. En este caso, los parámetros de creación deben contener la cadena "precisión, escala". En un comando de texto para crear una columna DECIMAL con una precisión de 10 y una escala de 2, el valor de la columna CreateFormat podría ser DECIMAL({0},{1})" y la especificación de tipo completa sería DECIMAL(10,2). |
| TipoDeDatos | cuerda / cadena | Nombre del tipo de .NET Framework del tipo de datos. |
| IsAutoincrementable | booleano | true: los valores de este tipo de datos pueden incrementarse automáticamente. false: es posible que los valores de este tipo de datos no se incrementen automáticamente. Tenga en cuenta que esto simplemente indica si una columna de este tipo de datos puede ser incremento automático, no que todas las columnas de este tipo se incrementen automáticamente. |
| IsBestMatch | booleano | true—El tipo de datos es la mejor coincidencia entre todos los tipos de datos en la base de datos y el tipo de datos del .NET Framework indicado por el valor en la columna DataType. false: el tipo de datos no es la mejor coincidencia. Para cada conjunto de filas en las que el valor de la columna DataType es el mismo, la columna IsBestMatch se establece en true en una sola fila. |
| EsSensibleAMayúsculas | booleano | true: el tipo de datos es de tipo carácter y distingue entre mayúsculas y minúsculas. false: el tipo de datos no es de tipo carácter y no distingue entre mayúsculas y minúsculas. |
| IsFixedLength | booleano | true: las columnas de este tipo de datos creadas por el lenguaje de definición de datos (DDL) tendrán una longitud fija. false: las columnas de este tipo de datos creadas por el DDL tendrán una longitud variable. DBNull.Value: no se sabe si el proveedor asignará este campo con una columna de longitud fija o de longitud variable. |
| IsFixedPrecisionScale | booleano | true: el tipo de datos tiene una precisión y una escala fijas. false: el tipo de datos no tiene una precisión y escala fijas. |
| IsLong | booleano | true: el tipo de datos contiene datos muy largos; la definición de datos muy largos es específica del proveedor. false: el tipo de datos no contiene datos muy largos. |
| IsNullable | booleano | true: el tipo de datos acepta valores NULL. false: el tipo de datos no acepta valores NULL. DBNull.Value: no se sabe si el tipo de datos puede ser nulo. |
| IsSearchable | booleano | true: el tipo de datos se puede utilizar en una cláusula WHERE con cualquier operador, excepto con el predicado LIKE. false: el tipo de datos no se puede utilizar en una cláusula WHERE con ningún operador, excepto con el predicado LIKE. |
| IsSearchableWithLike | booleano | true: el tipo de datos se puede utilizar con el predicado LIKE false: el tipo de datos no se puede usar con el predicado LIKE. |
| IsUnsigned | booleano | true: el tipo de datos es sin signo. false: el tipo de datos es con signo. DBNull.Value: no se aplica al tipo de datos. |
| Escala Máxima | corto | Si el indicador de tipo es un tipo numérico, este es el número máximo de dígitos permitidos a la derecha del separador decimal. De lo contrario, se trata de DBNull.Value. |
| Escala Mínima | corto | Si el indicador de tipo es un tipo numérico, este es el número mínimo de dígitos permitidos a la derecha del separador decimal. De lo contrario, se trata de DBNull.Value. |
| IsConcurrencyType | booleano | true: la base de datos actualiza el tipo de datos cada vez que cambia la fila y el valor de la columna es diferente de todos los valores anteriores. false: la base de datos no actualiza el tipo de datos cada vez que cambia la fila. DBNull.Value: la base de datos no admite este tipo de datos |
| IsLiteralSupported | booleano | true: el tipo de datos se puede expresar como un literal. false: el tipo de datos no se puede expresar como un literal. |
| LiteralPrefix | cuerda / cadena | El prefijo aplicado a un literal dado. |
| LiteralSuffix | cuerda / cadena | El sufijo aplicado a un literal dado. |
| NativeDataType | Cuerda | NativeDataType es una columna específica de OLE DB para exponer el tipo OLE DB del tipo de datos . |
Restricciones
Esta colección de esquemas expone información sobre las restricciones admitidas por el proveedor administrado de .NET Framework que se usa actualmente para conectarse a la base de datos.
| NombreDeColumna | TipoDeDatos | Descripción |
|---|---|---|
| Nombre de la Colección | cuerda / cadena | El nombre de la colección a la que se aplican estas restricciones. |
| NombreDeRestricción | cuerda / cadena | El nombre de la restricción en la colección. |
| RestrictionDefault | cuerda / cadena | Ignorado. |
| Número de Restricción | Int | La ubicación real de las restricciones de colecciones en la que se encuentra esta restricción en particular. |
PalabrasReservadas
Esta colección de esquemas expone información sobre las palabras reservadas por la base de datos al que está conectado el proveedor administrado de .NET Framework.
| NombreDeColumna | TipoDeDatos | Descripción |
|---|---|---|
| ReservedWord | cuerda / cadena | Palabra reservada específica del proveedor. |