Compartir a través de


Definición de esquema de DataTable (ADO.NET)

El esquema, o estructura, de una tabla se representa con columnas y restricciones. El esquema de una DataTable se define mediante objetos DataColumn, ForeignKeyConstraint y UniqueConstraint. Las columnas de una tabla se pueden asignar a columnas de un origen de datos, pueden contener valores calculados de expresiones, aumentar sus valores automáticamente o contener valores de clave principal.

Las referencias a los nombres de columnas, relaciones y restricciones de una tabla hacen distinción entre mayúsculas y minúsculas. En una tabla puede haber dos o más columnas, relaciones y restricciones con el mismo nombre, pero con distinción entre mayúsculas y minúsculas. Por ejemplo, se puede tener Col1 y col1. En este caso, una referencia al nombre de una de las columnas tiene que coincidir exactamente con las mayúsculas y minúsculas del nombre de la columna, de lo contrario se inicia una excepción. Por ejemplo, si la tabla myTable contiene las columnas Col1 y col1, la referencia al nombre de Col1 sería myTable.Columns["Col1"] y al de col1 sería myTable.Columns["col1"]. Si se intentara hacer referencia a cualquiera de las columnas mediante myTable.Columns["COL1"] se generaría una excepción.

La regla de distinción entre mayúsculas y minúsculas no se aplica si sólo hay una columna, relación o restricción con un nombre concreto. Es decir, si no hay ningún otro objeto de columna, relación o restricción en la tabla que coincida con el nombre de ese objeto de columna, relación o restricción concreto, se puede hacer referencia al nombre del objeto utilizando cualquier mayúscula o minúscula y no se generará una excepción. Por ejemplo, si la tabla sólo tiene Col1, se puede hacer referencia al nombre usando my.Columns["COL1"].

NotaNota

La propiedad CaseSensitive de la DataTable no afecta a este comportamiento.La propiedad CaseSensitive se aplica a los datos de una tabla y afecta al ordenamiento, la búsqueda, el filtrado, la aplicación de restricciones, etcétera, pero no afecta a referencias a columnas, relaciones ni restricciones.

En esta sección

Vea también

Otros recursos

DataTables (ADO.NET)