Lập trình thực thi các hoạt động xử lý theo cơ chế ngắt kết nối Disconnected 2.Tiến trình đọc Loading và ghi Saving dữ liệu của DataSet... Mô hình ngắt kết nối là gì?•Mô hình dữ liệu
Trang 2Lập trình thực thi các hoạt động xử
lý theo cơ chế ngắt kết nối
(Disconnected)
2.Tiến trình đọc (Loading) và ghi (Saving) dữ
liệu của DataSet
Trang 31 Mô hình ngắt kết nối là gì?
•Mô hình dữ liệu kết nối và ngắt kết nối
•Khai báo các ràng buộc (constraint) và các
quan hệ (relation) của các DataTable
Trang 4Mô hình kết nối và ngắt kết nối
Cho phép người dùng mở và duy trì kết nối đến CSDL
để thực hiện lệnh
Sử dụng đối tượng Connection và Command
•Mô hình dữ liệu ngắt kết nối (disconnected
model)
Cho phép người dùng kết nối đến CSDL, đọc và lưu trữ
dữ liệu vào vùng nhớ, sau đó ngắt kết nối Có thể thực
hiện các cập nhật trên vùng nhớ này và ghi trở lại CSDL
Sử dụng đối tượng Connection và DataAdapter
Trang 5Disconnected Model?
Trang 6Tạo DataSet và DataTable
•DataSet là gì?
Là một CSDL thu nhỏ đặt trong vùng nhớ
DataSet chứa các DataTable, DataRelation
Thuộc tính Tables chứa các DataTable của DataSet
Thuộc tính Relations chứa các DataRelation của
DataSet
•Tạo DataSet
Khởi tạo một DataSet
Khởi tạo các DataTable và sử dụng phương thức Add
Trang 7Tạo đối tượng DataSet
•Khai báo và khởi tạo
‘Tạo DataSet
DataSet du_lieu = new DataSet(“QLSV”);
‘Tạo DataTable
DataTable bang = new DataTable(“SV”);
‘Thêm DataTable vào DataSet
du_lieu.Tables.Add(bang);
Trang 8Tạo các DataColumn của DataTable
Trang 9Tạo đối tượng DataColumn
•Khai báo và khởi tạo
Trang 10Đối tượng DataColumn
Trang 11Minh họa tạo cấu trúc DataTable
Trang 12Khai báo Constraint và Relation
•Constraint là các kiểm tra ràng buộc trên
DataTable
Có hai loại: UniqueConstraint và ForeignKeyConstraint
Thuộc tính Constraints chứa các Constraint của
DataTable
•Relation là quan hệ giữa hai DataTable
Tạo DataRelation gồm Tên quan hệ, các cột bảng cha, các cột của bảng con
Thuộc tính Relations chứa các DataRelation của
DataSet
Trang 13Minh họa tạo Constraint
khoa
•Tạo constraint kiểm tra tên khoa là duy nhất
trong SINH_VIEN (bảng con) phải có trong KHOA (bảng cha)
Trang 14Minh họa tạo DataRelation
khoa
SINH_VIEN (bảng con) và trong KHOA (bảng cha)
Trang 15Cập nhật dữ liệu cho DataTable
Trang 16Tạo đối tượng DataRow
•Khai báo và khởi tạo
Trang 17Cập nhật dữ liệu cho DataTable
Sử dụng phương thức Remove để xóa hẳn một
DataRow ra khỏi DataTable
Sử dụng phương thức Delete để đánh dấu xóa một
DataRow trong DataTable
Trang 18Cập nhật dữ liệu cho DataTable
Sử dụng phương thức AcceptChanges để ghi
Sử dụng phương thức RejectChanges để không ghi
Trang 19Minh họa cập nhật DataTable
•Hiển thị DataTable ra lưới
Trang 202 Tiến trình đọc và ghi dữ liệu của
DataSet
dữ liệu
Trang 22Các DataAdapter trong NET
Trang 23Khai báo và khởi tạo DataAdapter
lưu trữ trong các DataTable của DataSet
và sau khi đọc xong thi Connection tự động đóng lại
Select Command
Insert Command
Trang 24Tạo đối tượng DataAdapter
•Khai báo và khởi tạo
‘Tạo DataAdapter
string lenh = “Select * From …”;
SqlDataAdapter bo_doc_ghi = new SqlDataAdapter(lenh, ket_noi);
‘Đọc dữ liệu
DataSet du_lieu = new DataSet();
bo_doc_ghi.Fill(du_lieu);
Trang 25Minh họa sử dụng DataAdapter để
đọc dữ liệu
bảng
của DataSet (hoặc DataTable không thuộc
DataSet)
•Hiển thị dữ liệu ra màn hình
Trang 26Minh họa sử dụng DataAdapter để
Trang 27Sử dụng DataAdapter để ghi
Update Command, Delete Command của
DataAdapter phải khai báo các câu lệnh thích hợp
SqlCommandBuilder để xây dựng tự động các
Command này
Trang 29Minh họa sử dụng DataAdapter để
đọc và ghi dữ liệu
bảng
của DataSet (hoặc DataTable không thuộc
Trang 30Minh họa sử dụng DataAdapter để
Trang 313 DataView là gì?
DataView được dùng hiển thị dữ liệu
•DataView cho phép lọc và sắp xếp dữ liệu của DataTable
Trang 33Sử dụng DataView
•Khai báo và khởi tạo
‘Khai báo và khởi tạo DataView
DataView dv = new DataView(bang);
‘Tham chiếu đến DataView mặc định
DataView dv = bang.DefaultView;
Trang 34Sử dụng DataView
•Để lọc dữ liệu theo điều kiện thuộc tính
Trang 35Minh họa sử dụng DataView
•Xử lý sắp xếp
•Xử lý lọc
•Xử lý tìm kiếm
Trang 36Thực hành 1
DataRelation
Trang 37Thực hành 2
Trang 38Thực hành 3