Definizione dello schema di DataTable (ADO.NET)
Lo schema, o struttura, di una tabella viene rappresentato da colonne e vincoli. Lo schema di un tipo DataTable viene definito utilizzando gli oggetti DataColumn oltre agli oggetti ForeignKeyConstraint e UniqueConstraint. Le colonne di una tabella possono essere associate a colonne di un'origine dati, contenere valori calcolati da espressioni, incrementare automaticamente i propri valori o contenere valori di chiavi primarie.
I riferimenti basati sui nomi a colonne, relazioni e vincoli di una tabella distinguono tra maiuscole e minuscole. Pertanto, in una tabella possono coesistere due o più colonne, relazioni o vincoli con lo stesso nome ma che presentano una combinazione diversa di maiuscole e minuscole. È possibile, ad esempio, che siano presenti sia Col1 che col1. In tal caso, è necessario che in un riferimento a una delle colonne basato sul nome venga utilizzato il nome con la stessa combinazione di maiuscole e minuscole adottata nella colonna. Se il nome non corrisponde, verrà generata un'eccezione. Se ad esempio nella tabella myTable sono contenute le colonne Col1 e col1, il riferimento basato sul nome a Col1 sarà myTable.Columns["Col1"] e il riferimento a col1 sarà myTable.Columns["col1"]. Se si tenta di fare riferimento a una delle due colonne come myTable.Columns["COL1"], verrà generata un'eccezione.
La distinzione tra maiuscole e minuscole non è rilevante se nella tabella è presente solo una colonna, una relazione o un vincolo con un determinato nome. Ovvero, se nella tabella non sono presenti altre relazioni o oggetti Constraint il cui nome corrisponda al nome della particolare colonna o relazione o oggetto Constraint, è possibile fare riferimento all'oggetto mediante il nome, utilizzando sia lettere maiuscole che minuscole, senza che venga generata alcuna eccezione. Se ad esempio nella tabella è presente solo Col1, è possibile fare riferimento a tale colonna utilizzando my.Columns["COL1"].
Nota |
---|
La proprietà CaseSensitive di DataTable non influisce su tale comportamento.Tale proprietà viene infatti applicata ai dati della tabella e influisce sull'ordinamento, la ricerca, l'applicazione di filtri, di vincoli e così via, ma non sui riferimenti a colonne, relazioni e vincoli. |
In questa sezione
Aggiunta di colonne a un DataTable (ADO.NET)
Viene descritta la definizione delle colonne di una tabella tramite gli oggetti DataColumn.Creazione di colonne di espressioni (ADO.NET)
Viene spiegato come utilizzare la proprietà Expression di una colonna per calcolare valori basati sui valori di altre colonne della riga.Creazione di colonne AutoIncrement (ADO.NET)
Viene descritto come impostare una colonna in modo che incrementi automaticamente i valori numerici, per garantire un valore di colonna univoco per ogni riga.Definizione di chiavi primarie (ADO.NET)
Viene descritto come specificare la chiave primaria di una tabella da uno o più oggetti DataColumn.Vincoli di DataTable (ADO.NET)
Viene descritto come definire vincoli di chiave esterna e univoci per le colonne di una tabella.