仙人球的品种及名称:GGJJ们帮忙看看是怎么回事啊?怎么老是未设置变量块呢?每次出现mrc的时候就出错

来源:百度文库 编辑:高考问答 时间:2024/05/05 01:20:02
Option Explicit
'是否改动过记录,ture为改过
Dim mblChange As Boolean
Dim mrc As ADODB.Recordset
Public txtSQL As String

Private Sub cmdExit_Click()
If mblChange And cmdSave.Enabled Then
If MsgBox("保存当前记录的变化吗?", vbOKCancel + vbExclamation, "警告") = vbOK Then
'保存
Call cmdSave_Click
End If
End If
Unload Me
End Sub

Private Sub cmdSave_Click()
Dim intCount As Integer
Dim sMeg As String
Dim MsgText As String

For intCount = 0 To 4
If Trim(txtItem(intCount) & " ") = "" Then
Select Case intCount
Case 0
sMeg = "种类编号"
Case 1
sMeg = "种类名称"
Case 2
sMeg = "借书数量"
Case 3
sMeg = "借书期限"
Case 4
sMeg = "有效期限"
End Select
sMeg = sMeg & "不能为空!"
MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
txtItem(intCount).SetFocus

Exit Sub
End If
Next intCount

For intCount = 2 To 4
If Not IsNumeric(Trim(txtItem(intCount))) Then
Select Case intCount
Case 2
sMeg = "借书数量"
Case 3
sMeg = "借书期限"
Case 4
sMeg = "有效期限"
End Select
sMeg = sMeg & "请输入数字!"
MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
txtItem(intCount).SetFocus

Exit Sub
End If
Next intCount
'添加判断是否有相同的ID记录
If gintRTmode = 1 Then
txtSQL = "select * from readertype where typeno='" & Trim(txtItem(0)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
MsgBox "已经存在此种类编号的记录!", vbOKOnly + vbExclamation, "警告"
txtItem(0).SetFocus
Exit Sub
End If
mrc.Close
End If

'判断是否有相同内容的记录
txtSQL = "select * from readertype where typeno<>'" & Trim(txtItem(0)) & "' and typename='" & Trim(txtItem(1)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
MsgBox "已经存在相同读者种类的记录!", vbOKOnly + vbExclamation, "警告"
txtItem(1).SetFocus
Exit Sub
End If

代码写得有点乱
Set mrc = ExecuteSQL(txtSQL, MsgText)
你的ExecuteSQL函数在哪里呀,另外它应该要返回一个RecordSet对象