在第19课和第20课里,我们已学会如何使用数据控件来建立VB数据库应用程式。然而,数据控件不是一个非常灵活的工具,因为它可只进行有限数据种类的处理及只能在Visual Basic环境操作。为克服这些局限性,我们可以使用一个更为强大的数据控制,它就是ADO控件。 ADO的全名是ActiveX Data Objects.。因为ADO是以ActiveX为基础的,所以它可以在不同的平台(不同的电脑系统)和不同的编程语言里操作。此外,它可以获取许多不同类型的数据,如在互联网浏览器显示的数据,,电子邮件正文和其他图形,甚至比一般的关联和非关联式资料库的资料。
|
为了能够使用ADO数据控件,您需要插入到工具箱。为此,只需按下CTRL +吨打开组件对话框,并选择Microsoft ActiveX Data Control 6. 。在这之后,您可以着手建立您的ADO技术为基础的VB数据库应用程序。 |
| Form Name | frmBookTitle |
| Form Caption | Book Titles -ADOApplication |
| ADO Name | adoBooks |
| Label1 Name | lblApp |
| Label1 Caption | Book Titles |
| Label 2 Name | lblTitle |
| Label2 Caption | Title : |
| Label3 Name | lblYear |
| Label3 Caption | Year Published: |
| Label4 Name | lblISBN |
| Label4 Caption | ISBN: |
| Labe5 Name | lblPubID |
| Label5 Caption | Publisher's ID: |
| Label6 Name | lblSubject |
| Label6 Caption | Subject : |
| TextBox1 Name | txtitle |
| TextBox1 DataField | Title |
| TextBox1 DataSource | adoBooks |
| TextBox2 Name | txtPub |
| TextBox2 DataField | Year Published |
| TextBox2 DataSource | adoBooks |
| TextBox3 Name | txtISBN |
| TextBox3 DataField | ISBN |
| TextBox3 DataSource | adoBooks |
| TextBox4 Name | txtPubID |
| TextBox4 DataField | PubID |
| TextBox4 DataSource | adoBooks |
| TextBox5 Name | txtSubject |
| TextBox5 DataField | Subject |
| TextBox5 DataSource | adoBooks |
| Command Button1 Name | cmdSave |
| Command Button1 Caption | &Save |
| Command Button2 Name | cmdAdd |
| Command Button2 Caption | &Add |
| Command Button3 Name | cmdDelete |
| Command Button3 Caption | &Delete |
| Command Button4 Name | cmdCancel |
| Command Button4 Caption | &Cancel |
| Command Button5 Name | cmdPrev |
| Command Button5 Caption | &< |
| Command Button6 Name | cmdNext |
| Command Button6 Caption | &> |
| Command Button7 Name | cmdExit |
| Command Button7 Caption | E&xit |
为了能够获取和管理数据库,你需要连接ADO数据控件到一个数据库档案。我们可使用VB6配来的biblio.mdb
。为了连接ADO来此资料库档案,按照下列步骤进行:
1 )按一下该ADO控件上的形式和开放属性窗口。
2 )点击就ConnectionString属性,下面的对话框就会出现。

当对话框出现,选择Use Connection String 的选项。下一步,单击建立和数据链接对话框中,双击该选项标记的Microsoft Jet 3.51 OLE DBprovider.。


Save 按钮的程序代码如下:
Private Sub cmdSave_Click()
adoBooks.Recordset.Fields("Title") = txtTitle.Text
adoBooks.Recordset.Fields("Year Published") = txtPub.Text
adoBooks.Recordset.Fields("ISBN") = txtISBN.Text
adoBooks.Recordset.Fields("PubID") = txtPubID.Text
adoBooks.Recordset.Fields("Subject") = txtSubject.Text
adoBooks.Recordset.Update
End Sub
Add 按钮的程序代码如下:
Private Sub cmdAdd_Click()
adoBooks.Recordset.AddNew
End Sub
Delete 按钮的程序代码如下:
Private Sub
cmdDelete_Click()
Confirm = MsgBox("Are you sure you want to delete this record?", vbYesNo,
"Deletion Confirmation")
If Confirm = vbYes Then
adoBooks.Recordset.Delete
MsgBox "Record Deleted!", , "Message"
Else
MsgBox "Record Not Deleted!", , "Message"
End If
End Sub
Cancel 按钮的程序代码如下:
Private Sub cmdCancel_Click()
txtTitle.Text = ""
txtPub.Text = ""
txtPubID.Text = ""
txtISBN.Text = ""
txtSubject.Text = ""
End Sub
Previous (<) 按钮的程序代码如下:
Private Sub cmdPrev_Click()
If Not adoBooks.Recordset.BOF Then
adoBooks.Recordset.MovePrevious
If adoBooks.Recordset.BOF Then
adoBooks.Recordset.MoveNext
End If
End If
End Sub
Next(>) 按钮的程序代码如下:
Private Sub cmdNext_Click()
If Not adoBooks.Recordset.EOF Then
adoBooks.Recordset.MoveNext
If adoBooks.Recordset.EOF Then
adoBooks.Recordset.MovePrevious
End If
End If
End Sub