C# 读取数据库中“上一条”“下一条”记录

C# 读取数据库中“上一条”“下一条”记录,第1张

SQL查询,

打比方现在id为1,2,3,浏览的是2

select top 1 id from table wehre id>2

select top 1 id from table wehre id<2

什么错呢?可否写出错误讯息!

* 有点须注意的是“第一笔”,“最后比笔”或“上一笔”须写在个别的CommandButton中。

-------------------------------------------------

'下面两行写在General(一般区域内)里面(程式最上面)

Dim sql As String

Dim Conn As New ADODB.Connection

Dim Rs As New ADODB.Recordset

'在Load区域内写:

Private Sub Form_Load()

On Error Resume Next

rs.MoveFirst

Label1.Caption=Rs("编号") &Rs("题目")

End Sub

Private Sub Command1_Click()

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &App.Path &"\db1.mdb" ’注意开关引号和分号

sql = "Select * From 单选题"' 单选题不放[]

rs.CursorLocation = adUseClient '加上这行鼠标位置功能

Rs.Open sql, Conn, adOpenKeyset, adLockPessimistic ’

Rs.MoveNext '下一笔资料

If Rs.BOF = False And Rs.EOF = False Then

Label1.Caption = Rs("编号") &Rs("题目")

End If

If Rs.EOF = True Then ‘若超过最后一笔资料就返回最后一笔记录。

Rs.MoveLast

End If

End Sub

-----------------------------------------------------

说明:

* EOF为 "End Of File"

* BOF为 "Begining Of File"

比如:Rs.EOF=True 意思为超过最后一笔记录。

Rs.BOF=True 意思为超过第一笔记录。

* 其他移动记录方法:

rs.MoveLast ‘最后一笔记录

rs.MoveFirst ‘第一笔记录

Rs.MovePrevious '上一笔资料

If Rs.BOF = False And Rs.EOF = False Then

Label1.Caption = Rs("编号") &Rs("题目")

End If

If Rs.BOF = True Then ‘若超过第一笔资料就返回第一笔记录。

Rs.MoveFirst

End If


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10090033.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存