Bài giảng Thực hành nhập môn công nghệ phần mềm - Bài 3: Kết nối VB với MS Access thông qua công nghệ ADO (ActiveX Data Object)
Mục đích
Trong bài thực hành này, bạn sẽ làm quen với cách xây dựng một ứng dụng VB tương tác với
CSDL Access thông qua sử dụng công nghệ ADO.
Yêu cầu
Đã nắm được các khái niệm cơ bản về xây dựng ứng dụng bằng VB
Sử dụng được hệ quản trị CSDL Access
Vấn đề liên quan
Thiết kế CSDL bằng Access
Kết nối CSDL Access thông qua ADO
Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 1 Bài 3. Kết nối VB với Ms. Access thông qua công nghệ ADO (ActiveX Data Object) Mục đích Trong bài thực hành này, bạn sẽ làm quen với cách xây dựng một ứng dụng VB tương tác với CSDL Access thông qua sử dụng công nghệ ADO. Yêu cầu Đã nắm được các khái niệm cơ bản về xây dựng ứng dụng bằng VB Sử dụng được hệ quản trị CSDL Access Vấn đề liên quan Thiết kế CSDL bằng Access Kết nối CSDL Access thông qua ADO Thời gian để hoàn tất bài thực hành: 90 phút Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 2 Bài tập 3.1. Thiết kế giao diện Mục đích: Học cách thiết kế form theo mẫu 1. Thiết kế form theo mẫu dưới đây 2. Đặt thuộc tính Name cho các đối tượng trên Form như trong hình trên 3. Đặt thuộc tính PasswordChar của đối tượng txtPassword là * 4. Bài 3. txtUsername txtPassword cmdTiep cmdDung g Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 3 Bài tập 3.2. Thiết kế CSDL Access Mục đích: Xây dựng CSDL 1. Mở ứng dựng Microsoft Access 2. Thiết kế CSDL, đặt tên là QUANLYNGUOIDUNG.MDB, có cấu trúc gồm 1 bảng NGUOIDUNG như sau: NGUOIDUNG STT Tên trường Kiểu dữ liệu Ghi chú 1 ID Text (7) Primary Key 2 Ten Text (50) Required 3 Matkhau Text(15) 3. Điền một số record thông tin vào bảng dữ liệu này ID Ten Matkhau ND01 1 1 ND02 2 2 ND03 3 3 ND04 4 4 Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 4 Bài tập 3.3. Kết nối Visual Basic với Access Mục đích: Thực hiện các bước làm việc để kết nối Access với VB Ghi nhớ: Các bước làm việc với CSDL 1. Chọn công nghệ sử dụng (DAO, ADO…) 2. Mở kết nối với CSDL 3. Chuẩn bị câu lệnh SQL 4. Mở RecordSet tương ứng với câu lệnh SQL trên (hay nói cách khác, RecordSet sẽ chứa kết quả trả về khi thực thi câu lệnh SQL) 5. Di chuyển con trỏ của RecordSet về vị trí đầu tiên 6. Duyệt qua từng giá trị của RecordSet, xử lý dữ liệu theo yêu cầu 7. Đóng kết nối với CSDL 4. Vào mục Project -> References -> Chọn và đánh dấu vào mục Microsoft ActiveX Data Objects 2.6 Library. Lưu ý: không chọn nhầm mục Microsoft ActiveX Data Objects 2.5 (hoặc 2.1…) Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 5 5. Viết hàm xử lý sự kiện click cho nút Tiếp (Bấm đúp (double click) vào nút Tiếp trên form, VB sẽ tự động thêm hàm xử lý sự kiện) Private Sub cmdTiep_Click() Dim Cn As ADODB.Connection Dim Rs As ADODB.Recordset Dim strSQL As String Dim bHople As Boolean „Khoi tao moi mot doi tuong Connection Set Cn = new ADODB.Connection Cn.ConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0; Data Source = QuanlyNguoiDung.mdb” Cn.Open „Thuc thi cau lenh SQL de lay tat ca Ten va Matkhau co trong CSDL strSQL = "Select TEN, MATKHAU from NGUOIDUNG" Set Rs = new ADODB.Recordset Rs.Open strSQL, Cn, adOpenStatic, adLockOptimistic „Kiem tra xem du lieu doc ra co hop le khong If (Rs.BOF = True) Then MsgBox "Khong doc duoc thong tin nguoi dung trong co so du lieu" Rs.Close Cn.Close Exit Sub End If Rs.MoveFirst Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 6 bHople = False „Lan luot Tim kiem xem username va password co ton tai trong CSDL khong Do While ((Not Rs.EOF) And (Not bHople = True)) If (Rs![TEN] = txtUsername.Text And Rs![MATKHAU] = txtPassword.Text) Then bHople = True Else Rs.MoveNext End If Loop „Dong ket noi voi CSDL Rs.Close Cn.Close If (bHople = True) Then MsgBox "Chuc mung ban da su dung chuong trinh" Unload Me Else MsgBox "Username hay Password khong hop le" End If End Sub 6. Viết hàm xử lý sự kiện click cho nút Dừng (Bấm đúp (double click) vào nút Dừng trên form, VB sẽ tự động thêm hàm xử lý sự kiện) Private Sub cmdDung_Click() Unload Me End Sub Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 7 Bài tập 3.4. Chạy và kiểm lỗi chương trình Mục đích: Sử dụng công cụ debug của VB 1. Để con trỏ ngay dòng đầu tiên của hàm cmdTiep_Click() bấm F9 (hoặc chọn menu Debug->Toggle Breakpoint) 2. Bấm F5 để bắt đầu chạy và kiểm lỗi chuơng trình 3. Nhập giá trị cho các Text Box như sau: Tên người dùng AAA Mật khẩu aaa 4. Ta thấy, VB tự động nhảy vào hàm cmdTiep_Click và dừng ngay dòng mà chúng ta đã đặt Breakpoint 5. Kiểm tra giá trị các biến sau, (chọn menu Debug->Add watch và nhập vào tên biến cần kiểm tra giá trị ) Tên biến Ghi chú Cn Quan sát và kiểm tra tất cả các thuộc tính của Cn, đặc biệt là thuộc tính Cn.ConnectionString strSQL Rs![TEN] Rs![MATKHAU] txtUsername.Text txtPassword.Text Chú ý tìm xem, giá trị của biến cn ở dòng cuối cùng của hàm này có gì khác so với ở đầu hàm Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 8 6. Bảo đảm rằng ứng dụng hiển thị ra màn hình câu thông báo “Username hay Password khong hop le” 7. Chạy lại chương trình, nhập giá trị cho các Text Box như sau: Tên người dùng 1 Mật khẩu 1 8. Lần lượt kiểm tra giá trị các biến như trên Bảo đảm rằng ứng dụng hiển thị ra màn hình câu thông báo “Chuc mung ban da su dung chuong trinh” Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 9 Bài tập Nâng cao. Kết nối CSDL có 2 bảng Mục đích: Sử dụng kết nối với CSDL Access có nhiều bảng 1. Viết ứng dụng với màn hình giao diện như sau: 2. Thiết kế CSDL, đặt tên là QUANLYNGUOIDUNG.MDB, có cấu trúc gồm 2 bảng NGUOIDUNG và LOAINGUOIDUNG như sau: NGUOIDUNG STT Tên trường Kiểu dữ liệu Ghi chú 1 ID Text (7) Primary Key 2 Ten Text (50) Required 3 Matkhau Text(15) 3 IDLoainguoidung Text(7) LOAINGUOIDUNG STT Tên trường Kiểu dữ liệu Ghi chú 1 IDLoainguoidung Text (7) Primary Key 2 TenLoainguoidung Text (20) Required 3. Điền một số record thông tin vào 2 bảng dữ liệu này NGUOIDUNG ID Ten Matkhau LoainguoidungID ND01 1 1 ND02 2 2 ND03 3 3 ND04 4 4 Bài 3. BÀI GIẢNG THỰC HÀNH MÔN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM 10 LOAINGUOIDUNG IDLoainguoidung TenLoainguoidung Loai1 Quản trị viên Loai2 Nhập liệu viên Loai3 Người dùng thường 4. Lần lượt làm các công việc sau: Viết hàm xử lý sự kiện cho các button: Nút Kiểm tra có công dụng kết nối với CSDL QuanlyNguoidung.mdb và kiểm tra username và password hợp lệ (giống như bài tập cơ bản). Chú ý: Lúc này, kiểm tra hợp lệ bao gồm luôn cả kiểm tra xem có đúng loại người dùng hay không Nút Thoát có tác dụng đóng chương trình lại Nút Xoá có tác dụng xoá trắng nội dung của các TextBox
File đính kèm:
- Ket_noi_VB_voi_Access_bang_ADO.pdf