TT. Visual Basic
Trang 91
Bước 3: Tham chiếu đến thư vin ADO bng cách chn Project\References\ActiveX
Data Object 2.0 Library. Chn OK.
Bước 4: Đặt mt điu khin ListBox lên Form (Name: lstName)
Bước 4: X lý s kin Form_Load như sau:
Set m_Connection = New ADODB.Connection
m_Connection.ConnectionString = _
"File Name=C:\Program Files\Common Files\System\Ole DB\Biblio.udl"
m_Connection.Open
Set m_RecordSet = New ADODB.Recordset
m_RecordSet.Open "Select Name FROM Publishers", m_Connection
Do While Not m_RecordSet.EOF
lstName.AddItem m_RecordSet!Name
m_RecordSet.MoveNext
Loop
Bước 5: Chy chương trình, điu gì xy ra?
Đon mã trên là mt ví d đin hình v vic s dng phương thc Open để nhn v
mt tp hp các Records t cơ s d liu.
Bước 6: Thay vì khi to đối tượng Connection nh đặt thuc tính ConnectionString
như trên (dùng tp tin DataLink), hãy khi to đối tượng này như trong phn mô t
lý thuyết (s dng thuc tính Provider & ConnectionString). Sau đó chy chương
trình. Nhn xét.
Bài tp 6-4
LƯU RECORSET RA TP TIN
Bước 1: Trước khi bt đầu, cn kim tra tp tin DataLink ca bài 6-2 có được to ra
hay là không?
Bước 2: To mt d án mi trong VB thư mc Basic\Bt6-4.
Bước 3: Tham chiếu đến thư vin ADO bng cách chn Project\References\ActiveX
Data Object 2.0 Library. Chn OK.
Bước 4: Thêm mt điu khin m rng vào hp công c Toolbox nh chn
Project\Components. Chn Microsoft Common Dialog Control 6.0 và Microsoft
DataGrid Control 6.0. Chn OK.
Bước 5: To giao din như sau:
TT. Visual Basic
Trang 92
5
4
3
2
1
Hình VI.8: Lưu
Recordset ra tp tin
1: TextBox:
Name: txtSQL; MultiLine: True.
2: CommandButton:
Name: cmdTT; Caption: Thc thi.
3: CommandButton:
Name: cmdLuu; Caption: Lưu tp tin
4: CommandButton:
Name: cmdMo; Caption: M tp tin
5: DataGrid: Name: grdResult
Ngoài ra, chương trình còn có s dng hp thoi m & lưu tp tin; do đó, ta
thêm vào mt Common Dialog vào ng dng vi thuc tính Name: dlgFile.
Bước 6: Khi chương trình thc thi, mi khi người dùng nhp vào mt câu lnh SQL
vào TextBox ri nhp chn Thc thi, câu SQL này s thc thi và hin th kết qu
lưới bên phi. Do đó s kin cmdTT_Click dược x lý như sau:
Private Sub cmdTT_Click()
Dim m_RecordSet As ADODB.Recordset
Set m_RecordSet = New ADODB.Recordset
m_RecordSet.CursorLocation = adUseClient
m_RecordSet.CursorType = adOpenStatic
m_RecordSet.Open txtSQL.Text, _
"File Name=C:\Program Files\Common Files\System\OLE DB\Biblio.udl"
Set grdResult.DataSource = m_RecordSet
End Sub
Bước 7: Lưu RecordSet vào tp tin s được thc hin nh hàm Save. đây, ta s
dng hp thoi CommonDialog để m và lưu tp tin. S kin cmdLuu_Click được x
lý:
Private Sub cmdLuu_Click()
On Error GoTo xuly
Dim m_RecordSet As ADODB.Recordset
Set m_RecordSet = grdResult.DataSource
TT. Visual Basic
Trang 93
Set grdResult.DataSource = Nothing
Dim strFileName As String
dlgFile.Filter = "Record Set Files (*.dat)|*.dat"
dlgFile.ShowSave
strFileName = dlgFile.FileName
' Luu cac mau tin
m_RecordSet.Save strFileName
Exit Sub
xuly:
MsgBox Err.Description, vbCritical + vbSystemModal, "Loi"
End Sub
Bước 8: Mi khi tp hp mu tin được lưu lên tp tin, chúng s không ph thuc vào
vào các ni kết vi ngun d liu. Để m d liu được lưu, s dng hàm Open vi tên
tp tin là đối s. S kin cmdOpen_Click được x lý:
Private Sub cmdMo_Click()
On Error GoTo xuly
Dim strFileName As String
dlgFile.Filter = "Record Set Files (*.dat)|*.dat"
dlgFile.ShowOpen
strFileName = dlgFile.FileName
Dim m_RecordSet As ADODB.Recordset
Set m_RecordSet = New ADODB.Recordset
m_RecordSet.Open strFileName
Set grdResult.DataSource = m_RecordSet
Exit Sub
xuly:
MsgBox Err.Description, vbCritical + vbSystemModal, "Loi"
End Sub
Bước 9: Chy chương trình, nhp câu lnh SQL vào TextBox, nhp Thc thi. Sau đó
lưu tp mu tin này lên đĩa. Mi khi mun m li tp tin nào đó, s dng M tp tin.
II. BÀI TP T LÀM
1) S dng ADO, thiết kế Form nhp liu cho bng THangHoa (hình dưới). đây
thay vì hin th MaLoai, ta li hin th TenLoai:
TT. Visual Basic
Hình VI.9: Form nhp liu
2) S dng ADO, thiết kế Form nhp liu cho bng TNhanVien.
3) S dng ADO, thiết kế Form cho phép nhp (sa, xóa) thông tin v mt phát sinh
v mt mt hàng nào đó trong ngày. Lưu ý: Trường STT là kiu AutoNumber
(Access), Ngay: ly ngày h thng (hàm Now).
Trang 94
TT. Visual Basic
Trang 95
Chương 7 MÔI TRƯỜNG D LIU
Mc tiêu:
Chương này gm các bài tp nhm rèn luyn cho sinh viên cách thc
s dng môi trường d liu (Data Environment) ca VB để lp trình CSDL.
Hc xong chương này, sinh viên phi nm bt được các vn đề sau:
S dng thành tho môi trường d liu gm:
- To đối tượng Connection.
- To đối tượng Command.
- Viết mã lnh thao tác vi môi trường d liu.
Kiến thc có liên quan:
- Giáo trình Visual Basic, Chương 12.
Tài liu tham kho:
-
Visual Basic 6 Certification Exam Guide – Chapter 10, Page 277 -
Dan Mezick & Scot Hillier - McGraw-Hill - 1998.
- T hc Lp trình cơ s d liu vi Visual Basic 6.0 trong 21 ngày
(T1) - Chương 9, trang 395 - Nguyn Đình Tê (ch biên) – Nhà xut bn
Giáo dc - 2001.