Khoa công nghệ thông tin
Lương Văn Vân
BÀI GIẢNG
BÀI GIẢNG
VISUAL BASIC 2
VISUAL BASIC 2
Khoa công nghệ thông tin
MỘT SỐ TIÊU ĐIỂM CỦA MÔN HỌC
Tổng số tiết: 90 tiết
Lý thuyết: 30 tiết
Bài tập: 15 tiết
Thực hành: 45 tiết
Sinh viên cần phải được học trước các môn
Visual Basic 1
Hệ quản trị CSDL (Access hoặc SQL Server)
Câu lệnh SQL để truy vấn dữ liệu
Thi kết thúc môn học bằng hình thức thi viết hoặc thi thực
hành.
Lập trình Visual Basic 2
2
Khoa công nghệ thông tin
TÀI LIỆU THAM KHẢO
5
Chương 1: TỔNG QUAN VỀ LẬP TRÌNH CSDL VỚI VB
CÁC KỸ THUẬT LIÊN KẾT CSDL
CÁC ĐỐI TƯỢNG LẬP TRÌNH CƠ SỞ
ĐIỀU KHIỂN ADO DATA
Khoa công nghệ thông tin
CÁC KỸ THUẬT LIÊN KẾT CSDL
Kỹ thuật ODBC
ODBC (Open DataBase Connectivity) là lớp giao tiếp mở chung,
cấp thấp (giao tiếp theo các lệnh API) hỗ trợ chương trình liên kết
và làm việc với các CSDL khác nhau.
Lập trình Visual Basic 2
6
Khoa công nghệ thông tin
CÁC KỸ THUẬT LIÊN KẾT CSDL (tt)
Kỹ thuật DAO
DAO (Data Access Object) là lớp giao tiếp cấp cao gồm các đối
tượng cho phép chương trình liên kết trực tiếp đến CSDL Access
thông qua một cơ chế truy xuất dữ liệu Microsoft Jet.
Lập trình Visual Basic 2
7
Khoa công nghệ thông tin
CÁC KỸ THUẬT LIÊN KẾT CSDL (tt)
Kỹ thuật OLE DB
Khoa công nghệ thông tin
CÁC ĐỐI TƯỢNG LẬP TRÌNH ADO CƠ SỞ
Lập trình Visual Basic 2
11
Command:
Đối tượng Command cho phép chương trình gọi thực hiện một câu truy vấn SQL trên CSDL hay gọi thực
hiện một thủ tục xử lý đã được cài đặt trong CSDL (Stored procedure).
Parameter
Là đối tượng dùng để nhận và trả về giá trị khi đối tượng Command gọi một thủ tục.
Đối với CSDL Access các truy vấn đã được xây dựng sẵn trong tập tin MDB (bao gồm các truy vấn chọn,
thêm, xóa, sửa…) có thể được xem như thủ tục.
Khoa công nghệ thông tin
CÁC ĐỐI TƯỢNG LẬP TRÌNH ADO CƠ SỞ
Lập trình Visual Basic 2
12
Recordset:
Là đối tượng lưu trữ một tập hợp các mẫu tin được chọn từ các bảng có trong CSDL. Thông qua đối tượng
Recordset, chúng ta có thể thực hiện các xử lý như hiện thị dữ liệu, cập nhật, tìm kiếm, xóa, sửa
Field:
Là đối tượng con cho phép chúng ta truy xuất và làm việc với một trường (cột) dữ liệu có trong một bộ mẫu
tin Recordset. Với đối tượng Field có hai thuộc tính đó là: Name (tên trường dữ liệu) và Type (kiểu dữ liệu
RECORDSET
Khoa công nghệ thông tin
CONNECTION
Lập trình Visual Basic 2
17
Tạo đối tượng Connection dùng lệnh:
Public cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Provider = "Microsoft.Jet.OLEDB.4.0“
cn.ConnectionString = "Data Source="& App.Path & " \TenCsdl.mdb;”
cn.Open
Thuộc tính State:
Thuộc tính State của connection dùng để kiểm tra trạng thái liên kết
của Connection đang đóng hay đang mở hoặc chúng ta có thể dùng
thuộc tính State để kiểm tra kết nối có thành công hay không
adStateClosed: không kết nối
adStateOpen: kết nối
Thuộc tính Open:
<tên biến Recordset>.Open [Source],[Connection],[Type],[Lock],
[Option]
Trong đó:
•
Source: là chuỗi xác định nguồn dữ liệu của bộ mẩu tin là tên một
bảng hay chuỗi câu lệnh SQL.
•
Connection: là chuỗi chứa thông tin kết nối CSDL.
Khoa công nghệ thông tin
RECORDSET (TT)
Lập trình Visual Basic 2
20
•
Type: là các hằng số chỉ ra loại của Recordset. Thông thường khi
viết ứng dụng chạy trên máy đơn chúng ta thường dùng loại
adOpenStatic.
•
Lock: là thuộc tính xác định trạng thái cho phép khóa dữ liệu khi
cập nhật trên bộ mẫu tin.
•
Option: là thuộc tính xác định kiểu nguồn dữ liệu Source
Hằng trị Ý nghĩa Trị
adCmdTable Khi Source là tên bảng trên Access 2
adCmdText Khi Source là truy vấn SQL 1
adCmdStoreProc Khi Source là Stored Procedure trong
SQL Server
4
Khoa công nghệ thông tin
RECORDSET (TT)
•
<tên biến recordset>(index)
Ví dụ:
•
Rs(“mssv”)
•
Rs!mssv
Khoa công nghệ thông tin
RECORDSET (TT)
Lập trình Visual Basic 2
23
Liên kết bộ mẫu tin với các điều khiển dữ liệu:
Set <tên điều khiển>.Datasource= <tên biến recordset>
<tên điều khiển>.DataField= <chuỗi tên trường liên kết>
Trong đó:
Tên điều khiển: TextBox, Label, ComboBox….
Ví dụ:
•
Rs.Open “tên Table”, cn, adOpenStatic, , adCmdTable
•
Set Text1.Datasource=rs
•
Text1.DataField=“mssv”
•
Set Text2.Datasource=rs
Lập trình Visual Basic 2
25
Các thuộc tính mẫu tin thường dùng
RecordCount (trị Long Integer): số lượng mẩu tin
BOF: Trước mẩu tin đầu
EOF: Sau mẩu tin cuối
EditMode: chỉ trình trạng của mẩu tin hiện hành, có các giá trị sau
•
adEditNone 0 Bình thường
•
adEditInProgress 1 Đang sửa đổi chưa cập nhật
•
adEditAdd 2 Đang thêm mới chưa cập nhật
•
adEditDelete 3 Đánh dấu hủy chưa cập nhật