📄 frmrecordset.vb
字号:
Option Explicit On
Option Strict On
Imports ADODB
Public Class frmRecordset
Private oConnection1 As Connection
Private m_oRecordset As Recordset
Private Sub UpdateInfo()
'填充控件内容
txtID.Text = m_oRecordset.Fields.Item(0).Value().ToString()
txtName.Text = m_oRecordset.Fields.Item(1).Value.ToString()
txtPlace.Text = m_oRecordset.Fields.Item(2).Value.ToString()
txtPrice.Text = m_oRecordset.Fields.Item(3).Value.ToString()
txtType.Text = m_oRecordset.Fields.Item(4).Value.ToString()
End Sub
Private Sub frmRecordset_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'设置数据库连接字符串
Dim m_sConnStr As String = "Provider='SQLOLEDB';Data Source='HZIEE-2E53F913F';" & _
"Initial Catalog='SuperMarket';Integrated Security='SSPI';"
'实例化Connection类并打开Connection对象
oConnection1 = New Connection
oConnection1.CursorLocation = CursorLocationEnum.adUseClient
oConnection1.Open(m_sConnStr)
Dim sSQL As String = "SELECT 编号, 名称, 产地, 价格, 类型编号 " & _
"FROM Product"
'实例化并打开Recordset对象
m_oRecordset = New Recordset
m_oRecordset.Open(sSQL, oConnection1, CursorTypeEnum.adOpenStatic, _
LockTypeEnum.adLockBatchOptimistic, CommandTypeEnum.adCmdText)
UpdateInfo()
End Sub
Private Sub frmRecordset_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
'判断Connection对象是否存在
If Not oConnection1 Is Nothing Then
'判断数据库是否处于连接状态
If oConnection1.State = ConnectionState.Open Then
'断开Recordset连接
m_oRecordset.ActiveConnection = Nothing
'关闭数据库连接
oConnection1.Close()
End If
oConnection1 = Nothing
End If
End Sub
Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFirst.Click
'移动到第一条记录
m_oRecordset.MoveFirst()
If Not m_oRecordset.BOF Then
'如果不是第一条的前一条,则执行更新操作,否则不做任何操作
UpdateInfo()
End If
End Sub
Private Sub btnPre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPre.Click
m_oRecordset.MovePrevious()
If Not m_oRecordset.BOF Then
UpdateInfo()
End If
End Sub
Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNext.Click
m_oRecordset.MoveNext()
If Not m_oRecordset.EOF Then
UpdateInfo()
End If
End Sub
Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLast.Click
m_oRecordset.MoveLast()
If Not m_oRecordset.EOF Then
UpdateInfo()
End If
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -