Creazione di un oggetto DataTable

È possibile creare una DataTable, che rappresenta una tabella di dati relazionali in memoria, e usarla in modo indipendente oppure usarla tramite altri oggetti di .NET Framework, in genere come membro di un DataSet.

È possibile creare un oggetto DataTable usando il costruttore DataTable appropriato. È possibile aggiungerlo al DataSet usando il metodo Add per aggiungerlo alla raccolta Tables dell'oggetto DataSet.

È inoltre possibile creare oggetti DataTable all'interno di un DataSet tramite i metodi Fill o FillSchema dell'oggetto DataAdapter oppure partendo da uno schema XML predefinito o inferito usando i metodi ReadXml, ReadXmlSchema o InferXmlSchema del DataSet. Notare che dopo l'aggiunta di una DataTable come membro di una raccolta Tables di un DataSet, non sarà possibile aggiungerla a raccolte di tabelle di altri DataSet.

Una DataTable appena creata non dispone di alcuno schema, ovvero di una struttura. Per definire lo schema della tabella, è necessario creare e aggiungere oggetti DataColumn alla raccolta Columns della tabella. È anche possibile definire una colonna di chiavi primarie per la tabella e creare e aggiungere oggetti Constraint alla raccolta Constraints della tabella. Una volta definito lo schema per una DataTable, è possibile aggiungere righe di dati alla tabella tramite l'aggiunta di oggetti DataRow alla raccolta Rows della tabella.

Quando si crea una DataTable, non è necessario fornire un valore per la proprietà TableName. È possibile specificare in seguito tale proprietà o lasciarla vuota. Tuttavia, se si aggiunge una tabella priva del valore TableName al DataSet, a tale tabella verrà assegnato il nome incrementale predefinito TableN, a partire da "Table" per Table0.

Nota

Si consiglia di evitare la convenzione di denominazione "TableN" quando si fornisce un valore per TableName perché è possibile che il nome fornito sia in conflitto con un nome di colonna predefinito esistente nel DataSet. Se il nome fornito è già presente, viene generata un'eccezione.

Nell'esempio seguente viene creata un'istanza di un oggetto DataTable e viene assegnato a tale oggetto il nome "Customers".

Dim workTable as DataTable = New DataTable("Customers")  
DataTable workTable = new DataTable("Customers");  

Nell'esempio seguente viene creata un'istanza di un oggetto DataTable aggiungendo l'oggetto alla raccolta Tables di un DataSet.

Dim customers As DataSet = New DataSet  
Dim customersTable As DataTable = _  
   customers.Tables.Add("CustomersTable")  
DataSet customers = new DataSet();  
DataTable customersTable = customers.Tables.Add("CustomersTable");  

Vedi anche