30
1 1 HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO HocLapTrinhWeb.COM

BÀI 6: THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

Embed Size (px)

Citation preview

Page 1: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

11

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Page 2: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

22

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Sử dụng Visual Studio 2005 Wizards để thực hiện các hoạt động theo cơ chế ngắt kết nối

1. Tổng quan về Typed Dataset

2. So sánh DataSet không định kiểu với DataSet có định kiểu

3. Table Adapter là gì ?

Page 3: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

33

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

1. Tổng quan về Typed Dataset

•Khái niệm

•Giới thiệu các công cụ tạo ra Typed Dataset

Page 4: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

44

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Khái niệm

•Type Dataset còn gọi là Strong Typed Dataset

•Nó là một lớp kế thừa từ System.Data.DataSet và nó có thể chứa các kiểu dữ liệu, các thuộc tính và các phương thức lồng vào nhau

•Typed Dataset và các thành viên của nó gọi chung là Strong-typed object (DataTable, DataColumn, …)

Page 5: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

55

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Khái niệm

•Giúp cho người dùng truy cập dữ liệu theo cách an toàn kiểu (type-safe way)

•Schema của Typed Dataset được biểu diễn dưới dạng tập tin XML Schema có phần mở rộng là .xsd

Page 6: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

66

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Giới thiệu các công cụ tạo ra Typed Dataset

•Dataset Designer

•Data Source Configuration Wizard

Page 7: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

77

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Giới thiệu các công cụ tạo ra Typed Dataset

•Dataset Designer

Nhấn chuột phải vào Project, chọn Add New Item…

Chọn biểu tượng trong khung Templates Add

Đã tạo xong một Typed Dataset

Tiếp tục tạo các thành viên bên trong:

sử dụng công cụ Dataset

Page 8: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

88

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Giới thiệu các công cụ tạo ra Typed Dataset

•Data Source Configuration Wizard

Trên thực đơn, chọn Data Add New Data Source…

Chọn loại Data Source: chọn

Chọn Data Connection: tạo mới hoặc đã có rồi

Chọn Database Objects và đặt tên Dataset

Chọn DataShow Data Source để xem kết quả vừa tạo

Page 9: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

99

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Giới thiệu các công cụ tạo ra Typed Dataset

•Data Source Configuration Wizard

Click vào icon Edit DataSet with Designer để mở cửa sổ thiết kế Dataset

Page 10: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1010

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

1. So sánh DataSet không định kiểu với DataSet có định kiểu

•So sánh Untyped và Typed Dataset

•Truy cập Data Table trong Typed Dataset

•Truy cập dữ liệu trong Typed Data Table

•Quản lý Rows và Columns trong Typed Data Table

Page 11: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1111

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

So sánh Untyped và Typed Dataset

Page 12: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1212

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

So sánh Untyped và Typed Dataset

•Ví dụ

Page 13: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1313

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa Untyped và Typed Datset Minh họa Untyped và Typed Datset

•Tạo một Dataset có tên là EmployeeDS

•Khai báo Dataset

•Truy xuất Table

•Truy xuất cột

•Xem lỗi phát sinh

Page 14: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1414

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Truy cập Data Table trong Typed Dataset

•Lớp Typed Dataset chứa các lớp Typed DataTable tương ứng với các table có trong Typed Dataset

•Các lớp Typed DataTable kế thừa từ lớp System.Data.DataTable

Page 15: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1515

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Truy cập Data Table trong Typed Dataset

•Thao tác truy cập

Giả sử ta có Dataset tên là AdventureWorksDataSet

Có 2 Table CountryRegion và CountryRegionCurrency trong DataSet này

Page 16: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1616

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Truy cập Data Table trong Typed Dataset

•Thao tác truy cập

AdventureWorksDataSet ds = new AdventureWorksDataSet();

AdventureWorksDataSet.CountryRegionDataTable dt = ds.CountryRegion;

AdventureWorksDataSet.CountryRegionDataTable dt2 = ds.CountryRegionCurrency;

Page 17: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1717

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa truy cập DataTable trong Minh họa truy cập DataTable trong Typed Datset Typed Datset

•Khai báo TableAdapter

•Khai báo Dataset

•Khai báo DataTable

•Lắp dữ liệu vào DataTable

Page 18: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1818

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Truy cập dữ liệu trong Typed Data Table

•Lớp Typed Dataset chứa các lớp Typed DataRow tương ứng với các table có trong Typed Dataset

•Các lớp Typed DataRow kế thừa từ lớp System.Data.DataRow

•Truy xuất trực tiếp tên cột trên đối tượng DataRow

Page 19: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

1919

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Truy cập dữ liệu trong Typed Data Table

•Thao tác

//truy xuất dòng đầu tiên

AdventureWorksDataSet.CountryRegionRow dr = dt[0]

//truy xuất cột CountryRegionCode và Name

Console.WriteLine(“Ma vung: {0}, Ten: {1}", dr.CountryRegionCode.ToString(), dr.Name);

//Hoặc sử dụng Dataset để truy xuất cột trực tiếp

ds.CountryRegion[<chỉ số dòng>].CountryRegionCode

Page 20: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2020

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa truy cập dữ liệu trong Minh họa truy cập dữ liệu trong Typed DataTableTyped DataTable

•Truy xuất dòng

•Truy xuất cột

Page 21: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2121

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Quản lý Rows và Columns trong Typed Data Table

•Typed DataTable cung cấp một số phương thức để truy cập các dòng

•Các phương thức này làm việc với lớp DataRow

Page 22: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2222

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Quản lý Rows và Columns trong Typed Data Table

Page 23: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2323

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa phương thức của Minh họa phương thức của DataTableDataTable

•Tìm dòng có giá trị khóa chính là “AF” (CountryRegionCode)

Page 24: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2424

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

2. Table Adapter là gì ?

•Khái niệm

•Các phương thức chuẩn trong Table Adapter Class

•Tạo thêm các truy vấn cho Table Adapter

Page 25: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2525

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Khái niệm

•Table Adapter là một lớp được phát sinh từ công cụ Wizard khi ta thêm một DataTable vào Dataset

•Lớp này cung cấp một số phương thức hỗ trợ người dùng thao tác dữ liệu (xóa, lưu, …)

Page 26: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2626

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Các phương thức chuẩn trong Table Adapter Class

Page 27: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2727

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa phương thức của Minh họa phương thức của TableAdapter TableAdapter

•Xóa dòng được tìm thấy từ minh hoạ trước

•Thêm một dòng mới

Page 28: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2828

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Tạo thêm các truy vấn cho Table Adapter

•Tạo thêm các phương thức khác theo yêu cầu cụ thể:

Trả về tập hợp các dòng bằng cách tạo ra phương thức Fillxxx và GetDataxxx

Trả về một giá trị tính toán như số tổng, số trung bình, …

Thêm, xóa, sửa trực tiếp một dòng trong CSDL

Page 29: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

2929

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Minh họa tạo thêm các custom Minh họa tạo thêm các custom queryquery

•Tạo thêm truy vấn có điều kiện cụ thể

•Tạo thêm truy vấn có tham số

Page 30: BÀI 6:  THỰC THI CÁC HOẠT ĐỘNG XỬ LÝ THEO CƠ CHẾ NGẮT KẾT NỐI BẰNG CÁCH SỬ DỤNG CÔNG CỤ HỖ TRỢ VISUAL STUDIO 2005 WIZARDS

3030

HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO

HocLapTrinhWeb.COM

Bài thực hành

•Tạo một Typed Dataset từ CSDL AdventureWorks

•Bổ sung table Department vào Dataset

•Sử dụng các phương thức của TableAdapter để cập nhật dữ liệu trực tiếp