我想给我的程序增加一个按序号(id)查询的功能,查询后能修改,和删除记录
应该怎么做呢?这是我的程序
Option Explicit
Private rstserver As New adodb.Recordset
Private bOK As Boolean
Private bof As Boolean
Private cof As Boolean'新增数据
Private Sub CmdApp_Click()Dim rstDummy11 As New adodb.Recordset
Dim m1 As String
Dim m2 As String
Dim m3 As String
Dim m4 As String
Dim dt As StringIf CmdApp.Caption = "新增(&A)" Then
CmdApp.Caption = "保存(&S)"
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdQuit.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
rstserver.AddNew
'给重大事故序号赋值
m1 = Format(Date, "yyyy/mm/dd")
With rstDummy11
If .State = adStateOpen Then .Close
.ActiveConnection = gcnnReport
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.Source = "SELECT id from sggl_info where date='" & m1 & " 'and levels='是' "
.Open
If IsNull(rstDummy11.Fields("id").Value) Then
MsgBox "今日无重大事故,确定后继续增加事故记录事故记录"
Else
m3 = user_dno & Format(Date, "yymmdd")
rstDummy11.Close
Set rstDummy11 = Nothing
End If
End With
Text1.Text = m3
'保存数据
Else
rstserver.Fields("id") = Mid(Text1, 1, 10)
rstserver.Fields("summary") = Mid(Text2, 1, 199)
rstserver.Fields("re") = Mid(Text3, 1, 199)
rstserver.Update
On Error Resume Next
CmdApp.Caption = "新增(&A)"
CmdEdit.Enabled = True
CmdDel.Enabled = True
CmdQuit.Enabled = True
CmdRec(0).Enabled = True
CmdRec(1).Enabled = True
CmdRec(2).Enabled = True
CmdRec(3).Enabled = True
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
End If
End Sub
'删除数据
Private Sub CmdDel_Click()
If MsgBox("是否确定删除?", vbDefaultButton2 + vbYesNo + vbApplicationModal, "") = vbYes Then
rstserver.Delete adAffectCurrent
If rstserver.RecordCount >= 1 Then
Call CmdRec_Click(3)
Else
rstserver.MoveNext
On Error Resume Next
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End If
End Sub'编辑数据
Private Sub CmdEdit_Click()
CmdApp.Caption = "保存(&S)"
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdQuit.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
End Sub
'退出窗口
Private Sub CmdQuit_Click()
Set rstserver = Nothing
Unload Me
End Sub'建立数据源的连接
Private Sub Form_Load()
With rstserver
If .State = adStateOpen Then .Close
.ActiveConnection = gcnnReport
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Source = "select id,summary,re from sggl_vipinfo order by id"
.Open
If Err.Number = -2147217865 Or Err.Number = -2147217904 Then
ShowErr "连接数据库错误,请与系统管理员联系"
Err.Clear
bOK = True
GoTo hhh
End If
DoEvents
If .RecordCount <= 0 Then
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End With
'读取数据库的字段值
Set Text1.DataSource = rstserver
Text1.DataField = "id"
Set Text2.DataSource = rstserver
Text2.DataField = "summary"
Set Text3.DataSource = rstserver
Text3.DataField = "re"
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
hhh: If bOK = True Then
CmdApp.Enabled = False
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End Sub
应该怎么做呢?这是我的程序
Option Explicit
Private rstserver As New adodb.Recordset
Private bOK As Boolean
Private bof As Boolean
Private cof As Boolean'新增数据
Private Sub CmdApp_Click()Dim rstDummy11 As New adodb.Recordset
Dim m1 As String
Dim m2 As String
Dim m3 As String
Dim m4 As String
Dim dt As StringIf CmdApp.Caption = "新增(&A)" Then
CmdApp.Caption = "保存(&S)"
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdQuit.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
rstserver.AddNew
'给重大事故序号赋值
m1 = Format(Date, "yyyy/mm/dd")
With rstDummy11
If .State = adStateOpen Then .Close
.ActiveConnection = gcnnReport
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.Source = "SELECT id from sggl_info where date='" & m1 & " 'and levels='是' "
.Open
If IsNull(rstDummy11.Fields("id").Value) Then
MsgBox "今日无重大事故,确定后继续增加事故记录事故记录"
Else
m3 = user_dno & Format(Date, "yymmdd")
rstDummy11.Close
Set rstDummy11 = Nothing
End If
End With
Text1.Text = m3
'保存数据
Else
rstserver.Fields("id") = Mid(Text1, 1, 10)
rstserver.Fields("summary") = Mid(Text2, 1, 199)
rstserver.Fields("re") = Mid(Text3, 1, 199)
rstserver.Update
On Error Resume Next
CmdApp.Caption = "新增(&A)"
CmdEdit.Enabled = True
CmdDel.Enabled = True
CmdQuit.Enabled = True
CmdRec(0).Enabled = True
CmdRec(1).Enabled = True
CmdRec(2).Enabled = True
CmdRec(3).Enabled = True
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
End If
End Sub
'删除数据
Private Sub CmdDel_Click()
If MsgBox("是否确定删除?", vbDefaultButton2 + vbYesNo + vbApplicationModal, "") = vbYes Then
rstserver.Delete adAffectCurrent
If rstserver.RecordCount >= 1 Then
Call CmdRec_Click(3)
Else
rstserver.MoveNext
On Error Resume Next
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End If
End Sub'编辑数据
Private Sub CmdEdit_Click()
CmdApp.Caption = "保存(&S)"
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdQuit.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
End Sub
'退出窗口
Private Sub CmdQuit_Click()
Set rstserver = Nothing
Unload Me
End Sub'建立数据源的连接
Private Sub Form_Load()
With rstserver
If .State = adStateOpen Then .Close
.ActiveConnection = gcnnReport
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Source = "select id,summary,re from sggl_vipinfo order by id"
.Open
If Err.Number = -2147217865 Or Err.Number = -2147217904 Then
ShowErr "连接数据库错误,请与系统管理员联系"
Err.Clear
bOK = True
GoTo hhh
End If
DoEvents
If .RecordCount <= 0 Then
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End With
'读取数据库的字段值
Set Text1.DataSource = rstserver
Text1.DataField = "id"
Set Text2.DataSource = rstserver
Text2.DataField = "summary"
Set Text3.DataSource = rstserver
Text3.DataField = "re"
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
hhh: If bOK = True Then
CmdApp.Enabled = False
CmdEdit.Enabled = False
CmdDel.Enabled = False
CmdRec(0).Enabled = False
CmdRec(1).Enabled = False
CmdRec(2).Enabled = False
CmdRec(3).Enabled = False
End If
End Sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货