返回介绍

8.9 使用数据对象向DBMS发送SQL语句

发布于 2023-05-19 17:35:11 字数 2643 浏览 0 评论 0 收藏 0

在Windows应用程序中,向DBMS发送SQL语句时,一般情况下使用都是被称为数据对象(Data Object)的软件组件(参考第7章所介绍的类)。一般的开发工具都包含了数据对象组件,在Visual Basic 6.0中,使用的是被称为ADO(ActiveX Data Object,ActiveX数据对象)的数据对象。

ADO是以下几个类的统称,其中包括用于建立和DBMS连接的Connection类,向DBMS发送SQL语句的Command类以及存储DBMS返回结果的Recordset类等。图8.14所示的应用程序的代码如代码清单8.1所示。

代码清单8.1 使用ADO访问数据库的示例程序(VB6.0)

‘实例化ADO提供的类

Dim con As New ADODB.Connection

Dim cmd As New ADODB.Command

Dim rst As New ADODB.Recordset

‘处理程序启动事件

Private Sub Form_Load()

con.ConnectionString=_

“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=liquor_store.mdb”

con.Open

End Sub

‘处理“录入”按钮单击事件

Private Sub cmdCreate_Click()

rst.AddNew

SetRecordset

rst.Update

End Sub

‘处理“获取”按钮单击事件

Private Sub cmdRetrieve_Click()

If rst.State=adStateOpen Then

rst.Close

End If

rst.Open “SELECT 顾客姓名,住址,电话号码,商品名称,单价,销售量”&_

“FROM 顾客表,商品表,销售记录”&_

“AND 销售记录表.顾客ID=顾客表.顾客ID”&_

“AND 销售记录表.商品ID=商品表.商品ID”&_

con,adOpenKeyset,adLockOptimistic

If rst.RecordCount>0 Then

rst.MoveFirst

ShowRecordset

Else

MsgBox “找不到符合条件的数据!”,vbInformation,“”

End If

End Sub

‘处理“更新”按钮单击事件

Private Sub cmdUpdate_Click()

SetRecrodset

rst.Update

End Sub

‘处理“删除”按钮单击事件

Private Sub cmdDelete_Click()

rst.Delete

rst.Update

End Sub

‘处理“上一条”按钮单击事件

Private Sub cmdPrev_Click()

rst.MovePrevious

If rst.BOF Then

rst.MoveFirst

End If

ShowRecrodset

Ens Sub

‘处理“下一条”按钮单击事件

Private Sub cmdNext_Click()

rst.MoveNext

If rst.EOF Then

rst.MoveLast

End If

ShowRecordset

End Sub

‘Recordset显示Recordset中的内容

Private Sub ShowRecordset()

txtCustomer.Text=rst.Fields(0)

txtAddress.Text=rst.Fields(1)

txtPhone.Text=rst.Fields(2)

txtItems.Text=rst.Fields(3)

txtUnitPrice.Text=rst.Fields(4)

txtSales.Text=rst.Fields(5)

End Sub

‘Recordset设置Recordset中的数据

Private Sub SetRecordset()

rst.Fields(0)=txtCustomer.Text

rst.Fields(1)=txtAddress.Text

rst.Fields(2)=txtPhone.Text

rst.Fields(3)=txtItem.Text

rst.Fields(4)=txtUnitPrice.Text

rst.Fields(5)=txtSales.Text

End Sub

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文