DATASET LÀ GÌ
Trong bài viết này họ vẫn tò mò xem DataSet vào C# ADO.NET là gì? các nằm trong tính, chức năng với giải pháp áp dụng nó như thế nào. Sau kia là một trong vài ba ví dụ rõ ràng sử dụng DataSet để những chúng ta có thể làm rõ hơn nhé.
Bạn đang xem: Dataset là gì


Tại bài xích trước mình đã ra mắt về DataTable trong ADO.NET, các chúng ta cũng có thể xem lại nhằm hiểu rõ biện pháp sử dụng của nó.
1. DataSet trong C# là gì?
DataSet thay mặt cho 1 tập hợp con của các đại lý dữ liệu vào bộ nhớ. Hay nói theo cách khác, DataSet là một tập vừa lòng những bảng tài liệu gồm đựng dữ liệu quan hệ giới tính trong bộ nhớ nghỉ ngơi định dạng bảng (table).
Nó ko đề xuất liên kết mnghỉ ngơi hoặc chuyển động liên tiếp cùng với cơ sở dữ liệu. DataSet được thực hiện để search hấp thụ dữ liệu mà lại không nên can dự cùng với bất kì mối cung cấp dữ liệu như thế nào.
Bài viết này được đăng tại
*Lưu ý: DataSet là nhân tố cốt yếu để cung ứng quyền truy cập tài liệu vào môi trường thiên nhiên phân tán cùng ngắt két nối (disconnected). Class DataSet ở trong namespace System.Data.
Signature của DataSet trong ADO.NET.
public class DataSet : MarshalByValueComponent, IListSource, IXmlSerializable, ISupportInitializeNotification, ISupportInitialize, ISerializable
2. Cấu trúc của DataSet vào C#
Trong phần này chúng ta vẫn tò mò về kết cấu của DataSet vào ADO.NET. Cụ thể thì DataSet hỗ trợ 4 hàm chế tạo ra sau đây.public DataSet();public DataSet(string dataSetName);public DataSet(SerializationInfo info, StreamingContext context);public DataSet(SerializationInfo info, StreamingContext context, bool ConstrucSchema);
Trong đó:
3. Các trực thuộc tính với phương thức của DataSet vào C#
Trong phần này mình đã reviews về các thuộc tính cùng những thủ tục của DataSet vào ADO.NET, đó là một trong những phần hơi đặc biệt vì vậy chúng ta hãy chăm chú nhé.
Các thuộc tính của DataSet vào ADO.NET.
CaseSensitive: Được áp dụng để đưa hoặc đặt một cực hiếm cho biết liệu những đối chiếu chuỗi trong số đối tượng người tiêu dùng System.Data.DataTable tất cả tách biệt chữ hoa hoặc chữ thường xuyên hay không. Nó trả về true trường hợp những so sánh chuỗi là chữ hoa hoặc chữ hay, ngược lại là false (mang định là false).DefaultViewManager: Được áp dụng nhằm rất có thể coi được chế độ thiết lập cấu hình tài liệu có vào System.Data.Set để cho phép thanh lọc, tìm kiếm kiếm và điều hướng bằng phương pháp sử dụng System.Data.DataViewManager thiết lập cấu hình.DataSetName: Được thực hiện để đưa hoặc đặt lên của System.Data.DataSet hiện nay.EnforceConstraints: Được áp dụng để lấy hoặc đặt một cực hiếm cho biết thêm liệu các nguyên tắc buộc ràng đạt được tuân thủ theo đúng Khi triển khai bất kỳ thao tác update làm sao hay không.HasErrors: Được sử dụng nhằm thừa nhận một quý hiếm cho thấy liệu có lỗi trong bất cứ đối tượng người sử dụng DataTable như thế nào trong DataSet này hay là không.IsInitialized: Được áp dụng để nhận một cực hiếm cho thấy liệu DataSet dành được khởi tạo hay là không. Nó trả về true để cho thấy yếu tố đã được khởi chế tạo ra, ngược chở lại là false.Prefix: Được sử dụng để mang hoặc đặt một chi phí tố XML làm cho bí danh cho namespace System.Data.DataSet.Locale: Được áp dụng để đưa hoặc đặt báo cáo ngữ điệu cho câu hỏi so sánh các chuỗi vào bảng.Namespace: Được sử dụng để mang hoặc khắc tên namespace của System.Data.DataSet.Site: Được áp dụng dể đem hoặc thiết lập cấu hình một System.ComponentModel.ISite đến System.Data.DataSet.Relations: Được áp dụng để mang tập hợp các tình dục liên kết các bảng và cho phép điều phối từ bỏ bảng người mẹ sang trọng bảng nhỏ.Tables: Được thực hiện để đưa tập hợp các bảng có trong System.Data.DataSet.Các cách tiến hành của DataSet vào ADO.NET.
Xem thêm: Hurdle Rate Là Gì - (Hurdle Rate) Là Gì
4. So sánh giữa DataReader với DataSet vào C#
Trong phần này bản thân sẽ đưa ra một vài tác dụng của hai class vào C# ADO.NET đó là DataReader với DataSet, nhằm những bạn có thể đối chiếu với chắt lọc sử dụng trong các ngôi trường vừa lòng khác nhau.
Một vài tác dụng của DataSet.
khi ý muốn lưu lại dữ liệu vào bộ nhớ đệm toàn cục vào ứng dụng của chính mình để bạn cũng có thể thao tác tài liệu.Lúc mong mỏi tương ảnh hưởng với dữ liệu, có nghĩa là buộc ràng dữ liệu cùng với điều khiển và tinh chỉnh winforms.khi ý muốn thao tác làm việc với architecture bị ngắt liên kết.Một vài ba tính năng của DataReader.
Nếu mong muốn thêm một số trong những công dụng khác được đề cập sinh sống bên trên, thì cần thực hiện DataReader để triển khai đa dạng và phong phú vận dụng.DataReader chuyển động bên trên architecture liên kết, Tức là nó thưởng thức có kết nối mngơi nghỉ với đại lý dữ liệu.5. lấy một ví dụ sử dụng DataSet trong C#
Trong ví dụ này bản thân vẫn lí giải rõ ràng công việc tạo nên và sử dụng một DataSet trong C# ADO.NET, các bạn chú ý theo dõi nhé.
Tạo bảng dữ liệu Customer.
// Tạo một bảng CustomerDataTable Customer = new DataTable("Customer");//Tạo các cột và những schemaDataColumn CustomerId = new DataColumn("ID", typeof(Int32));Customer.Columns.Add(CustomerId);DataColumn CustomerName = new DataColumn("Name", typeof(string));Customer.Columns.Add(CustomerName);DataColumn CustomerMobile = new DataColumn("Mobile", typeof(string));Customer.Columns.Add(CustomerMobile);//Thêm các hàng dữ liệu vào bảng CustomerCustomer.Rows.Add(101, "Van Quyen", "118001229");Customer.Rows.Add(202, "hoidapthutuchaiquan.vn", "1234567890");
Như các bạn sẽ thấy, mình đã chế tạo một DataTable cùng với thương hiệu là Customer. Sau đó sản xuất bố cột dữ liệu với thêm ba cột này vào bảng tài liệu Customer.
Cuối thuộc là chế tạo ra hai hàng dữ liệu với thêm hai hàng dữ liệu này vào bảng Customer. Vậy nên là họ sẽ tạo thành thành công xuất sắc bảng tài liệu Customer với ba cột với nhị hàng dữ liệu
Tạo bảng dữ liệu Orders.
// Tạo bảng OrdersDataTable Orders = new DataTable("Orders");//Tạo những cột và các schemaDataColumn OrderId = new DataColumn("ID", typeof(Int32));Orders.Columns.Add(OrderId);DataColumn CustId = new DataColumn("CustomerId", typeof(Int32));Orders.Columns.Add(CustId);DataColumn OrderAmount = new DataColumn("Amount", typeof(Int32));Orders.Columns.Add(OrderAmount); //Thêm những hàng dữ liệu vào bảng OrdersOrders.Rows.Add(10001, 101, 20000);Orders.Rows.Add(10002, 102, 30000);
Tương từ như bảng Customer, ngơi nghỉ bảng này ta cũng chế tác DataTable, tiếp nối chế tác các cột với hàng tài liệu rồi cung cấp bảng.
Tạo DataSet và DataTable.
//Tạo DataSetDataSet dataSet = new DataSet();//Thêm các DataTables vào DataSet.dataSet.Tables.Add(Customer);dataSet.Tables.Add(Orders);
Nlỗi đang nói ở vị trí trên, thì DataSet là 1 trong tập vừa lòng các DataTable. Vì vậy ta đề xuất sản xuất một đối tượng DataSet với kế tiếp thêm hai bảng tài liệu (Customer cùng Orders) vào DataSet.
Đưa dữ liệu vào DataTable từ bỏ DataSet.
Để gửi tài liệu vào DataTable từ bỏ DataSet ta hoàn toàn có thể thực hiện nhị bí quyết. Cách đầu tiên là sử dụng địa chỉ index để thể phân phối DataTable và cách thứ nhì là áp dụng thương hiệu bảng (Name).
Sử dụng địa chỉ index:
foreach (DataRow row in dataSet.Tables<0>.Rows) Console.WriteLine(row<"ID"> + ", " + row<"Name"> + ", " + row<"Mobile">);
Vì lần đầu tiên ta thêm bảng Customer vào DataSet phải vị trí index của nó bằng 0. Nếu hy vọng lặp lại tài liệu bảng quý khách thì rất có thể áp dụng vòng lặp foreach nhằm tái diễn.
Sử dụng tên bảng:
foreach (DataRow row in dataSet.Tables<"Orders">.Rows) Console.WriteLine(row<"ID"> + ", " + row<"CustomerId"> + ", " + row<"Amount">);
Ngoài biện pháp áp dụng địa điểm index như bên trên, ta còn rất có thể thực hiện tên của bảng nhằm thêm tài liệu vào bằng phương pháp áp dụng vòng lặp foreach.
Xem thêm: Hội Fa Là Gì ? Những Ý Trả Lời Mọi Câu Hỏi Về Fa Trên Facebook
Full Code.
using System;using System.Data;namespace ConsoleApp4 class Program static void Main(string<> args) try //chế tác mới một bảng có tên Customer DataTable Customer = new DataTable("Customer"); //chế tạo những cột cùng các schema của bảng DataColumn CustomerId = new DataColumn("ID", typeof(Int32)); Customer.Columns.Add(CustomerId); DataColumn CustomerName = new DataColumn("Name", typeof(string)); Customer.Columns.Add(CustomerName); DataColumn CustomerSmartphone = new DataColumn("Mobile", typeof(string)); Customer.Columns.Add(CustomerMobile); //thêm những sản phẩm dữ liệu vào bảng Customer Customer.Rows.Add(101, "Van Quyen", "118001229"); Customer.Rows.Add(202, "hoidapthutuchaiquan.vn", "1234567890"); //tạo ra new một bảng Orders DataTable Orders = new DataTable("Orders"); //tạo thành các cột vầ những schema của bảng DataColumn OrderId = new DataColumn("ID", typeof(Int32)); Orders.Columns.Add(OrderId); DataColumn CustId = new DataColumn("CustomerId", typeof(Int32)); Orders.Columns.Add(CustId); DataColumn OrderAmount = new DataColumn("Amount", typeof(Int32)); Orders.Columns.Add(OrderAmount); //thêm các mặt hàng dữ liệu vào bảng Orders Orders.Rows.Add(10001, 101, 20000); Orders.Rows.Add(10002, 102, 30000); //chế tạo mới một instance DataSet DataSet dataSet = new DataSet(); //thêm các datatable vào dataphối dataSet.Tables.Add(Customer); dataSet.Tables.Add(Orders); Console.WriteLine("Du lieu trong bang Customer: "); //áp dụng vòng lặp foreach nhằm thêm dữ liệu vào datatable bằng địa chỉ index foreach (DataRow row in dataSet.Tables<0>.Rows) Console.WriteLine(row<"ID"> + ", " + row<"Name"> + ", " + row<"Mobile">); Console.WriteLine(); Console.WriteLine("Du lieu vào bang Orders: "); //áp dụng vòng lặp foreach để thêm tài liệu vào datatable bởi tên bảng foreach (DataRow row in dataSet.Tables<"Orders">.Rows) Console.WriteLine(row<"ID"> + ", " + row<"CustomerId"> + ", " + row<"Amount">); catch (Exception e) Console.WriteLine("Co loi xay ra.
" + e); Console.ReadKey();
Kết quả:
bởi thế là họ sẽ tò mò kết thúc về DataSet vào C# ADO.NET là gì? những nằm trong tính, cách thức cùng cách sử dụng nó. Ở bài xích tiếp theo mình đang liên tiếp trả lời cách thao tác cùng với SQL bởi DataSet, chúng ta lưu giữ để ý theo dõi nhé !!!