VB中,用文本框给数据库添加记录,我想在保存前,检查文本框内的内容是否与数据库的重复,

如果有重复,则拒绝保存,如果没有,保存,... 如果有重复,则拒绝保存,如果没有,保存, 展开
 我来答
百度网友c1300c0
2011-07-23 · TA获得超过626个赞
知道小有建树答主
回答量:852
采纳率:0%
帮助的人:722万
展开全部
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim loginflag As Boolean

Private Sub Command1_Click()
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
'建立无源数据库连接
conn.ConnectionString = "driver={sql server};server=12-3FDA18CE0DDC;uid=sa;pwd=sa;Database=test"
conn.ConnectionTimeout = 50
conn.Open
Dim str As String
'连接连接对象
Set rs.ActiveConnection = conn
'设置游标类型
rs.CursorType = adOpenDynamic
If Trim(Text1.Text = "") Then
MsgBox "用户名不能为空,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
'主要看上边这几句

Text1.SetFocus
Else
'设置查询字符串
str = "select * from tt where name ='" & Trim(Text1.Text) & "'"
rs.Open str
If rs.EOF = True Then
MsgBox "这个用户已经存在,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
Text1.SetFocus
Else
'登录成功,连接主窗口
If (Trim(Text2.Text) = Trim(rs.Fields("password"))) Then
loginflag = True
Me.Hide
Form2.Show
MsgBox "登陆成功"
Else
MsgBox "密码不正确,请重输入密码!", , "警告"
Text2.SetFocus
SendKeys "{Home}+{End}"
End If
End If
End If
End Sub

Private Sub Command2_Click()
Me.Hide
loginflag = False
End
End Sub
六脉无忌
2011-07-23 · 超过15用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:46.1万
展开全部
写函数调用
Public Function Find(Grid As String,col as Strint, str1 As String, Optional str2 As String="", Optional str3 As String="") As String
Dim rs As New ADODB.Recordset
Dim sql As String
Dim Tmg As String

Set rs = New ADODB.Recordset
sql = "select " & Tcol & " from " & Grid & " where " & str1
If str2<>"" Then sql=sql & " and " & str2

If str3<>"" Then sql=sql & " and " & str3

rs.Open sql, cn, adOpenKeyset, adLockPessimistic
If rs.RecordCount = 0 Then
Tmg = ""
Else
Tmg = rs.Fields(0)
End If
Find = Tmg
rs.Close
Set rs = Nothing
End Function
调用
sub command_click()
if find("查寻的表","查寻的列","要比较的列=text1.text")="" then
megbox "没有"
end if

end sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式