数据库更新时,判断输入的部门是否存在
这段代码是实现向数据库中的“部门表”添加新的部门,其中Text1中输入的是部门名称,Text2中输入的是部门编号;当用户单击“确定”按钮以后
需要检查用户输入的“部门名称”是否已经存在,如果存在则给出提示,对于“部门编号”同样要检查并给出提示,但是我的这段代码却不能实现这个
功能。请哪位高手看看,帮助解决,万分感谢!!!
Private Sub Command1_Click()
Dim mrc As New ADODB.Recordset
Dim txtsql As String
Dim msgtext As String
Dim cn As New ADODB.Connection
cn.Open ConnectionString
If Trim(Text1.Text) = "" Then '判断是否输入了部门名称
MsgBox "部门名称不能为空!请重新输入!"
Text1.SetFocus
Else
txtsql = "select * from 部门表 where 部门名称= ' " & Text1.Text & " ' "
Set mrc = ExecuteSQL(txtsql, msgtext) '在部门表中查找部门
mrc.Open txtsql, cn, adOpenDynamic, adLockBatchOptimistic
If mrc.EOF = False Then '判断输入的部门是否已存在
MsgBox "该部门名称已存在,请重新输入!"
Text1.SetFocus
Text1.Text = ""
Else
If Trim(Text2.Text) = "" Then
MsgBox "请输入部门编号!"
Text2.SetFocus
Else
txtsql = "select * from 部门表 where 部门编号=' " & Text2.Text & " ' "
Set mrc = ExecuteSQL(txtsql, msgtext) '判断输入的部门编号是否已存在
mrc.Open txtsql, cn, adOpenDynamic, adLockBatchOptimistic
If mrc.EOF = False Then
MsgBox "该部门编号已存在!"
Text2.SetFocus
Text2.Text = ""
Else '若输入的部门名称和部门编号都正确,则插入
txtsql = "select * from 部门表"
Set mrc = ExecuteSQL(txtsql, msgtext)
mrc.Open txtsql, cn, adOpenDynamic, adLockBatchOptimistic
mrc.AddNew
mrc.Fields("部门名称").Value = Text1.Text
mrc.Fields("部门编号").Value = Text2.Text
mrc.Fields("部门经理").Value = " "
If MsgBox("您确定加入该部门?", vbYesNo, "提示") = vbYes Then
mrc.UpdateBatch
MsgBox "添加新部门成功!"
Unload Me
Else
Unload Me
frmMain.Show
End If
End If
End If
End If
End If
End Sub