Udostępnij za pośrednictwem


Dodawanie elementu DataTable do elementu DataSet

ADO.NET umożliwia tworzenie DataTable obiektów i dodawanie ich do istniejącego DataSetobiektu . Informacje o ograniczeniu dla elementu DataTable można ustawić przy użyciu właściwości i Unique .PrimaryKey

Przykład

Poniższy przykład tworzy DataSetobiekt , dodaje nowy DataTable obiekt do DataSettabeli , a następnie dodaje do tabeli trzy DataColumn obiekty. Na koniec kod ustawia jedną kolumnę jako kolumnę klucza podstawowego.

DataSet customerOrders = new("CustomerOrders");

DataTable ordersTable = customerOrders.Tables.Add("Orders");

DataColumn pkOrderID =
    ordersTable.Columns.Add("OrderID", typeof(int));
ordersTable.Columns.Add("OrderQuantity", typeof(int));
ordersTable.Columns.Add("CompanyName", typeof(string));

ordersTable.PrimaryKey = new DataColumn[] { pkOrderID };
Dim customerOrders As New DataSet("CustomerOrders")

Dim ordersTable As DataTable = customerOrders.Tables.Add("Orders")

Dim pkOrderID As DataColumn = ordersTable.Columns.Add( _
    "OrderID", Type.GetType("System.Int32"))
ordersTable.Columns.Add("OrderQuantity", Type.GetType("System.Int32"))
ordersTable.Columns.Add("CompanyName", Type.GetType("System.String"))

ordersTable.PrimaryKey = New DataColumn() {pkOrderID}

Ważność wielkości liter

Co najmniej dwie tabele lub relacje o tej samej nazwie, ale różne wielkości liter mogą istnieć w obiekcie DataSet. W takich przypadkach w tabelach i relacjach są uwzględniane wielkości liter odwołania według nazwy. Jeśli na przykład zestaw DataSet danych zawiera tabele Table1 i table1, należy odwołać się do tabeli Table1 według nazwy dataSet.Tables["Table1"] i table1 jako dataSet.Tables["table1"]. Próba odwołania do jednej z tabel jako elementu dataSet.Tables["TABLE1"] spowoduje wygenerowanie wyjątku.

Zachowanie poufności wielkości liter nie ma zastosowania, jeśli tylko jedna tabela lub relacja ma określoną nazwę. Jeśli na przykład element zawiera tylko tabelę DataSet Table1, możesz odwoływać się do niej przy użyciu elementu dataSet.Tables["TABLE1"].

Uwaga

Właściwość CaseSensitive obiektu DataSet nie ma wpływu na to zachowanie. Właściwość CaseSensitive ma zastosowanie do danych w obiekcie DataSet i wpływa na sortowanie, wyszukiwanie, filtrowanie, wymuszanie ograniczeń itd.

Obsługa przestrzeni nazw

W wersjach ADO.NET starszych niż 2.0 dwie tabele nie mogły mieć tej samej nazwy, nawet jeśli znajdowały się w różnych przestrzeniach nazw. To ograniczenie zostało usunięte w ADO.NET 2.0. Obiekt DataSet może zawierać dwie tabele, które mają tę samą TableName wartość właściwości, ale różne Namespace wartości właściwości.

Zobacz też