UBND TNH THANH HÓA
TRƯỜNG CAO ĐẲNG NÔNG NGHIP
GIÁO TRÌNH
MÔN HC: LP TRÌNH WINDOWS 2 (ADO.NET)
NGH: CÔNG NGH THÔNG TIN (ƯDPM)
TRÌNH ĐỘ: CAO ĐẲNG
Ban hành kèm theo Quyết định số: /QĐ-CĐNN ngày…….tháng….năm 20
ca Hiệu trưởng Trường Cao đẳng Nông nghip Thanh Hóa
Thanh hóa, năm 2024
TUYÊN B BN QUYN
Tài liu này thuc loi sách giáo trình nên các ngun thông tin th
đưc phép dùng nguyên bn hoc trích dùng cho các mục đích về đào tạo và
tham kho.
Mi mc đích khác mang tính lệch lc hoc s dng vi mục đích kinh
doanh thiếu lành mnh s b nghiêm cm.
LỜI NÓI ĐẦU
Trong knguyên số hóa hiện nay, việc tự động hóa quản dữ liệu hiệu quả yếu
tố then chốt cho sự thành công của mọi tổ chức, doanh nghiệp. Lập trình ứng dụng
quản không chỉ một kỹ năng cần thiết còn một nghệ thuật, nơi bạn biến
những yêu cầu nghiệp vụ phức tạp thành các giải pháp phần mềm trực quan mạnh
mẽ.
Giáo trình y đƣợc biên soạn nhằm cung cấp cho bạn kiến thức knăng thực tiễn
để xây dựng các ứng dụng quản hoàn chỉnh bằng ngôn ngữ lập trình Visual Basic
.NET (VB.NET), một lựa chọn phổ biến nhờ pháp dễ hiểu khả năng tích hợp
mạnh mẽ với môi trƣờng phát triển Visual Studio. Đồng thời, chúng ta sẽ đi sâu vào
cách tƣơng tác với SQL Server, một trong những hệ quản trị cơ sở dữ liệu hàng đầu
thế giới, để lƣu trữ, truy xuất và quản lý dữ liệu một cách an toàn và hiệu quả.
Xuyên suốt giáo trình, bạn sẽ đƣợc hƣớng dẫn từng bƣớc một, từ những khái niệm
bản nhất của lập trình, thiết kế giao diện ngƣời dùng, đến các kỹ thuật nâng cao hơn
nhƣ thao tác với cơ sở dữ liệu (sử dụng ADO.NET), kiểm tra và xác thực dữ liệu, xử lý
lỗi, đặc biệt là tạo các báo cáo chuyên nghiệp với Crystal Reports. Mỗi chƣơng đều
đƣợc minh họa bằng các dụ cụ thể, giúp bạn dễ dàng nắm bắt lý thuyết áp dụng
vào thực tế.
Để phù hợp với nội dung kiến thức của khung chƣơng trình đào tạo mới,
chúng tôi biên soạn giáo trình này gồm 6 chƣơng:
Chƣơng 1.Tổng quan v ADO.Net
Chƣơng 2.Tƣơng tác với cơ sở d liu
Chƣơng 3: Xử lý d liu
Chƣơng 4: B điu hp d liu DataAdapter
Chƣơng 5: Sử dụng các điều khin ràng buc d liu
Chƣơng 6: Tạo báo cáo vi Crystal Report
Mặc tập thể nhóm biên soạn đã rất nhiều cố gắng trong quá trình
biên soạn, song không thể tránh khỏi những khiếm khuyết. Nhóm biên soạn rất
mong nhận đƣợc những đóng góp ý kiến đóng góp chân thành của bạn đọc.
T/M nhómTác giả
Chủ biên
Lê Phú Thảo
PH LC
LỜI NÓI ĐẦU ............................................................................................................................ 3
CHƢƠNG TRÌNH MÔN HỌC .................................................................................................. 8
Tên môn học: Lập trình windows 2 (ADO.NET) .................................................................. 8
Mã môn học: MH 21 ................................................................................................................ 8
CHƢƠNG 1: TỔNG QUAN VỀ ADO.NET ............................................................................. 9
1. Lch s phát trin ............................................................................................................... 9
1.1. Tin thân: ADO (ActiveX Data Objects) - Trƣớc .NET ........................................... 9
1.2. S ra đời ca ADO.NET - .NET Framework 1.0 ....................................................... 9
1.3. Phát trin và ci tiến qua các phiên bn .NET Framework: ..................................... 10
1.4. S phát trin ca Entity Framework ........................................................................ 10
2. Phn mm cn thiết .......................................................................................................... 10
2.1. Môi trƣờng phát triển tích hợp (IDE): ................................................................. 10
2.2. .NET SDK (Software Development Kit) .............................................................. 11
2.3. Hệ quản trị cơ sở dữ liệu (DBMS): ....................................................................... 11
2.4. Thƣ viện nhà cung cấp dữ liệu (.NET Data Provider): ............................................ 11
3. Kiến trúc ca ADO.Net ................................................................................................... 12
3.1. Các Nhà Cung Cấp Dữ liệu .NET Framework (.NET Framework Data
Providers) ....................................................................................................................... 12
3.2. Bộ Dữ liệu (DataSet) ............................................................................................. 13
3.3. Mô hình Kết nối (Connected Model) và Phi Kết nối (Disconnected Model) ... 14
3.4. Mối Quan Hệ Giữa Các Thành Phần ................................................................. 14
4. Các đối tƣợng ADO.Net trong .Net Frameword .............................................................. 15
4.1. Các đối tƣợng của .NET Framework Data Providers (Mô hình Connected) ... 15
4.2. Các đối tƣợng của DataSet (Mô hình Disconnected) .......................................... 16
5. Biu din d liu trong b nh ........................................................................................ 17
5.1. DataSet: Cơ sở dữ liệu trong bộ nhớ .................................................................... 17
5.2. DataTable: Biểu diễn một bảng dữ liệu ............................................................... 17
5.3. DataColumn: Biểu diễn một cột ............................................................................ 18
5.4. DataRow: Biểu diễn một hàng (bản ghi) .............................................................. 18
5.5. DataRelation: Biểu diễn mối quan hệ giữa các bảng .......................................... 18
5.6. Constraint: Biểu diễn các ràng buộc .................................................................... 18
5.7. DataView: Chế độ xem dữ liệu .............................................................................. 18
6. qun lý Recordset ............................................................................................................. 19
6.1.1. Các bƣớc cơ bản để làm vic vi Recordset ......................................................... 19
6.2.2. Các thuc tính quan trng ca Recordset ............................................................. 20
6.1.3. Hn chế ca Recordset trong ADO c điển ......................................................... 21
Câu hi ôn tp: .......................................................................................................................... 21
CHƢƠNG 2. TƢƠNG TÁC VỚI CƠ SỞ DỮ LIỆU .............................................................. 22
1. Đối tƣợng connection....................................................................................................... 22
1.1. Thuc tính của đối tƣợng connection ...................................................................... 22
1.1.1. Các Thuc tính Chính ca SqlConnection ...................................................... 22
1.1.2. Ví d minh ha các thuc tính trong VB.NET ............................................... 24
1.2. Các phƣơng thức của đối tƣợng connection ............................................................ 25
1.3. Connection kết ni qua ADO.Net Data Provider .................................................... 27
1.3.1. Khái nim .NET Data Provider ............................................................................. 27
1.3.2. Các .NET Data Provider ph biến ......................................................................... 28
1.3.3. Cách thc hoạt động ca Connection qua ADO.NET Data Provider ................... 29
1.3.4. Ví d kết ni qua các ADO.NET Data Provider khác nhau (VB.NET) ............... 29
2. Đối tƣợng Command ....................................................................................................... 31
2.1. Các thuộc tính đối tƣợng Command ........................................................................ 31
2.1.1. Các thuộc tính chung (có ở hầu hết các loại Command) ................................ 31
2.1.2. Thuộc tính cụ thể cho SqlCommand (Ví dụ cho SQL Server) ........................ 32
2.1.3. Ví dụ về cách sử dụng các thuộc tính của Command ..................................... 32
2.2. Các phƣơng thức đối tƣợng Command ................................................................... 34
2.2.1. Các Thuc tính Chính ca Command (Ví d SqlCommand)............................... 34
2.2.2. Ví d minh ha các thuc tính ca SqlCommand (VB.NET) .............................. 36
3. Đối tƣợng DataReader ..................................................................................................... 38
3.1. Các thuc tính của đối ng DataReader ............................................................... 38
3.1.1. Các Thuc tính Chính ca DataReader (Ví d SqlDataReader) .......................... 38
3.1.2. Ví d Minh ha các Thuc tính ca SqlDataReader (VB.NET) .......................... 39
3.2. Các phƣơng thức của đối tƣợng DataReader ........................................................... 40
3.2.1. Các Phƣơng Thức Chính ca DataReader............................................................ 40
3.2.2. Ví d Tng Hợp các Phƣơng Thức ca SqlDataReader (VB.NET) ..................... 43
3.3. Truy xut các thành phn của đối tƣợng DataReader ............................................. 45
3.3.1. Các Phƣơng Pháp Truy Xuất Thành Phần (Cột)............................................ 45
3.3.2. Xử lý giá trị NULL (Rất quan trọng!) .............................................................. 46
3.3.3. Tối ƣu hóa truy xuất cột (Kết hợp GetOrdinal và Get<Type>) .................... 47
Câu hi ôn tp ......................................................................................................................... 48
CHƢƠNG 3. XỬ LÝ DỮ LIỆU .............................................................................................. 49
1. Thành phn ca Dataset ................................................................................................... 49
1.1. Các Thành phn Chính ca DataSet ........................................................................ 49
1.2. Các Thành phn ca DataTable ............................................................................... 50
1.3. Cu trúc Hình hc ca DataSet ................................................................................ 50
1.4. Ví d Minh ha các Thành phn ca DataSet (VB.NET) ........................................ 51
1.5. Cu trúc Phân cp ca DataSet ................................................................................ 53
1.6. Vai trò ca DataSet ................................................................................................. 53
2. Tƣơng tác với DataSet ..................................................................................................... 53
2.1. Định nghĩa giản đồ DataTable ................................................................................ 53
2.1.1. Các Thành Phần Của Giản Đồ DataTable ....................................................... 54
2.1.2. Cách Tạo Giản Đồ DataTable ............................................................................ 55
2.1.3. Tầm Quan Trọng của Giản Đồ DataTable ....................................................... 56
2.2. Thêm d liu vào DataTable .................................................................................... 57
2.2.1. Các Bƣớc Cơ Bản để Thêm D liu vào DataTable ............................................. 57
2.2.2. Các Phƣơng Pháp Thêm Dữ liu C Th .............................................................. 57
2.2.3. Thêm D liệu và Theo Dõi Thay Đổi .................................................................. 59
2.3. Truy xut d liu t DataTable ............................................................................... 59
2.3.1. Truy Cp Các Hàng (Rows) và Ct (Columns) ................................................... 59
2.3.2. Lc và Sp xếp D liu trong DataTable ............................................................. 60
2.3.3. Tìm kiếm mt hàng c th theo khóa chính ......................................................... 60
2.3.4. Ví d Minh Ha Truy Xut D liu t DataTable (VB.NET) .............................. 61
2.4. Tìm kiếm, lc và sp xếp dòng ............................................................................... 63
2.4.1. Tìm Kiếm Dòng theo Khóa Chính (DataRowCollection.Find()) ......................... 63
2.4.2. Lc và Sp xếp Dòng (DataTable.Select()) .......................................................... 64
2.4.3. Lc và Sp xếp Nâng Cao (DataView) ................................................................ 66
2.5. Cp nht DataSet ...................................................................................................... 67
2.5.1. Cp Nht D Liu trong DataSet (Trong B Nh) ............................................... 67
2.5.2. Lƣu Các Thay Đổi t DataSet v Cơ Sở D Liu (DataAdapter.Update()) ........ 69
2.6. To quan h gia các bng ....................................................................................... 69
2.6.1. Khái nim DataRelation ........................................................................................ 69
2.6.2. Cách to và thêm DataRelation vào DataSet ....................................................... 70
2.6.3. Cách s dụng DataRelation để điều hƣớng d liu ............................................... 70
2.6.4. Ví d Tng Hp (VB.NET) .................................................................................. 71
2.7. Ràng buc gia các bng ........................................................................................ 74