Definição do esquema de DataTable

O esquema, ou a estrutura, de uma tabela é representado por colunas e restrições. Você define o esquema de uma DataTable usando objetos DataColumn, bem como objetos ForeignKeyConstraint e UniqueConstraint. As colunas em uma tabela podem ser mapeadas para colunas em uma fonte de dados, contêm valores calculados de expressões, incrementam automaticamente seus valores ou contêm valores de chave primária.

As referências por nome a colunas, relações e restrições em uma tabela diferenciam maiúsculas de minúsculas. Duas ou mais colunas, relações ou restrições podem, portanto, existir em uma tabela que tenha o mesmo nome, mas que seja diferente quanto ao uso de maiúsculas e minúsculas. Por exemplo, você pode ter Col1 e col1. Nesse caso, uma referência a uma das colunas por nome deve corresponder ao uso exato de maiúsculas e minúsculas do nome da coluna; do contrário, uma exceção será lançada. Por exemplo, se a tabela myTable contiver as colunas Col1 e col1, a referência será Col1 pelo nome como myTable.Columns["Col1"], e col1 como myTable.Columns["col1"]. A tentativa de referenciar qualquer uma das colunas como myTable.Columns["COL1"] gerará uma exceção.

A regra de diferenciação de maiúsculas e minúscula não se aplicará se houver apenas uma coluna, relação ou restrição com um nome específico. Ou seja, se nenhum outro objeto de coluna, relação ou restrição na tabela corresponder ao nome desse objeto de coluna, relação ou restrição específico, você poderá fazer referência ao objeto por nome usando qualquer uso de maiúsculas e minúsculas, e nenhuma exceção será lançada. Por exemplo, se a tabela tiver apenas Col1, você poderá fazer referência a ela usando my.Columns["COL1"].

Observação

A propriedade CaseSensitive de DataTable não afeta esse comportamento. A propriedade CaseSensitive se aplica aos dados em uma tabela e afeta a classificação, a pesquisa, a filtragem, a imposição de restrições, e assim por diante, mas não as referências às colunas, relações e restrições.

Nesta seção

Adicionando colunas a um DataTable
Descreve como definir as colunas de uma tabela usando objetos DataColumn.

Criando colunas de expressão
Explica como a propriedade Expression de uma coluna pode ser usada para calcular valores com base nos valores de outras colunas na linha.

Criar colunas AutoIncrement
Descreve como uma coluna pode ser definida para incrementar automaticamente valores numéricos para garantir um valor de coluna exclusivo por linha.

Definir chaves primárias
Descreve como especificar a chave primária de uma tabela de um ou mais objetos DataColumn.

Restrições de DataTable
Descreve como definir a chave estrangeira e restrições exclusivas para colunas em uma tabela.

Confira também