
+ Giúp chúng ta có th n m b t m t cách t ng quát th t các bể ắ ắ ộ ổ ứ ự ư c l p ớ ậ
trình v i Cớ ơ S D Li u (CSDL) b ng cách s d ng ADODB.ở ữ ệ ằ ử ụ
M c ụđích :
+Đ i tố ư ng ADODB bao g m : Connection, Command và RecordSet.ợ ồ
1, Đ i tố ư ng Connection : ợ
1.1, K t n i v i CSDL :ế ố ớ
- Các lo i CSDL có th k t n i : Access, SQL Server, Oracle, Excel…ạ ể ế ố
-Vi c k t n i thông tin t CSDL cho ệ ế ố ừ đ i tố ư ng ợConnection đưc th c ợ ự
hi n thông qua thu c tính ệ ộ ConnectionString.
ConnectionString g m 2 thông tin chính là ồProvider và Ngu n d li u, các ồ ữ ệ
thông tin khác có th có thêm là UserName và PassWord ểđ có th truy ể ể
c p CSDL có b o m tậ ả ậ
- Sau đó, s d ng hành ử ụ đ ng ộOpen đ m k t n i. Vi c ki m tra tr ng ể ở ế ố ệ ể ạ
thái k t n i thông qua thu c tính ế ố ộ State .

1, Đ i tố ư ng Connection : ợ
1.1, K t n i v i CSDL :ế ố ớ
-Th t c k t n i củ ụ ế ố ơ s d li u : ở ữ ệ
Dim CN As New ADODB.Connection,dc As String
Sub KetNoi()
dc = App.Path & " \tenCSDL.mdb"
CN.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dc
CN.CursorLocation = adUseClient
CN.Open
End Sub
- Thu c tính ộCursorLocation giúp ch ỉđ nh cách Data Project cung c p các ị ấ
ch c nứăng thao tác v i CSDL g m hai giá tr ớ ồ ị adUseServer và adUseClient.

1, Đ i tố ư ng Connection : ợ
1.2, Th c Hi n Truy V n SQL :ự ệ ấ
- Sau khi đã k t n i v i CSDL, vi c truy xu t d li u thế ố ớ ệ ấ ữ ệ ư ng thông qua các ờ
câu truy v n SQL.ấ
- Hành đ ng Execute c a ộ ủ đ i tố ư ng Connection dùng ợđ th c hi n m t câu ể ự ệ ộ
truy v n SQL ấ
sql = “Update KetQua Set Diem = Diem + 1 Where MaMon=’TH01’”
CN.Execute sql
1.3, Qu n Lý L i : ả ỗ
- Connection cung c p thu c tính Errors ch a t p h p l i ấ ộ ứ ậ ợ ỗ đ giúp ngể ư i ờ
l p trình có th ki m soát l i phát sinh.ậ ể ể ỗ
- T p h p ậ ợ Errors g m các ồđ i tố ư ng Error v i nh ng thu c tính cung c p ợ ớ ữ ộ ấ
thông tin v l i xáy ra nhề ỗ ư Description, Source, SQL State,…

2, Đ i tố ư ng RecordSet : ợ
2.1, T o ạđ i tố ư ng RecordSet :ợ
- RecordSet cho phép làm vi c trên t ng dòng d li u thay vì trên m t t p ệ ừ ữ ệ ộ ậ
h p nhi u m u tin. Do ợ ề ẩ đó, ta có th coi RecordSet nhể ư m t Table hay m t ộ ộ
Query trong CSDL.Qua đó vi c thao tác trên d li u s r t d dàng.ệ ữ ệ ẽ ấ ễ
- Có th t o m t RecordSet b ng nhi u cách khác nhau nhể ạ ộ ằ ề ư : Ch ra tên ỉ
b ng hay b ng m t câu truy v n SQLả ằ ộ ấ
- Vi c m RecordSet ệ ở đưc th c hi n qua hành ợ ự ệ đ ng ộOpen.
Tùy vào ng c nh l p trình, RecordSet cung c p các thu c tính ữ ả ậ ấ ộ
CursorType và LockType đ ngể ư i dùng truy c p d li u. Hai thu c tính ờ ậ ữ ệ ộ
này có th ểđưc cung c p tr c ti p qua hành ợ ấ ự ế đ ng ộOpen.

2, Đ i tố ư ng RecordSet : ợ
2.2, Hi n th d li u :ể ị ữ ệ
- RecordSet thông qua hai thu c tính ộDataSource và DataField cho phép
hi n th d li u lên các ể ị ữ ệ đi u khi n(TextBox, Label, CheckBox…)ề ể
- Ví D : ụ
Dim rsSinhVien As ADODB.Recordset
Set rsSinhVien = New ADODB.Recordset
rsSinhVien.Open "SINHVIEN", CN, adOpenStatic, _
adLockOptimistic,adCmdTable
Set txtHoTen.DataSource = rsSinhVien
txtHoTen.DataField = "HoTen"
2.3, Làm vi c trên các m u tin :ệ ẩ
- M u tin ẩđang đưc làm vi c g i là m u tin hi n hànhợ ệ ọ ẩ ệ
- Đ chuy n sang làm vi c trên các m u tin khác trong RecordSet, ngể ể ệ ẩ ư i ờ
dùng s d ng hành ử ụ đ ng ộMoveFirst, MoveLast, Move, MovePrevious,
MoveNext, Bookmark.

