在线等待回答!多谢了!请看这个问题!很急的 !
Public cn As Connection
Public cnstring As String
Public rs As ADODB.Recordset
Sub main()
Set rs = New ADODB.Recordset
Set cn = New ADODB.Connection
cnstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\data\tj.mdb;Persist Security Info=False"
cn.Open cnstring
cn.CursorLocation = adUseClient
rs.Open "select * from tj", cn, 1, 3
frm.Show
End Sub
这是模块
Private Sub Command1_Click()
Set rs = New ADODB.Recordset
rs.Open "select * from tj ", cn, 1, 3
rs.AddNew
rs("tjid") = txttjid.Text
rs("name") = txtname.Text
rs("edu") = txtedu.Text
rs("his") = txtjwbs.Text
rs("f_his") = txtfbs.Text
rs("minzu") = txtminzu.Text
rs("work") = txtwork.Text
rs("com") = txtcom.Text
rs("merry") = commerry.Text
rs("sex") = comsex.Text
rs("date") = dtpdate.Value
If rs.RecordCount > 1 Then
MsgBox "这个号码已经存在了"
Exit Sub
End If
rs.Update
frm1.Hide
End Sub
上面其他都是正常的 唯独判断是否重复输入有问题 不管哪个号码他都说已经存在了 麻烦看看 谢谢
问题点数:20、回复次数:8Top
1 楼dbcontrols(泰山__抛砖引玉)回复于 2002-02-05 12:15:20 得分 0
rs.MoveFirst
If rs.Eof()=False Then
MsgBox "这个号码已经存在了"
Exit Sub
End If
Top
2 楼luanjiajia(抵制日货,从我做起)回复于 2002-02-05 12:21:45 得分 0
好象有逻辑错误,你在调试一下
Top
3 楼Fanks(铁面人)回复于 2002-02-05 12:25:39 得分 0
既然你打开记录集没有条件,那只要表内有记录,条件就会成立,如果tj是临时表,那你就应该用后清空。Top
4 楼HowardOK(小B)回复于 2002-02-05 12:30:54 得分 0
难道你的数据库中就没有一条记录!
rs.Open "select * from tj ", cn, 1, 3 是打开整个数据库呀!
你应该以某一字段为查找对象
rs.Open "Select * From tj Where name='" & txtname.Text
& "'" ,cn,1,3
你试试吧!Top
5 楼MMXMJ(破气式)回复于 2002-02-05 12:50:10 得分 0
都不行啊!Top
6 楼HowardOK(小B)回复于 2002-02-05 12:59:48 得分 5
我是这样的:
Dim DataPath As String
DataPath = App.path + "\MyMP3.mdb"
Dim myCon As ADODB.Connection
Dim myRS As New ADODB.Recordset
Set myCon = New ADODB.Connection
myCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPath & " ;Persist Security Info=False"
myCon.Open
myRS.CursorLocation = adUseClient
myRS.Open "Select * from 歌曲列表 Where 歌首 ='" & Singger & "'", myCon, adOpenStatic, adLockBatchOptimistic
主要看看Open这句我参数设置和前面的设置
Top
7 楼hydnoahark(诺亚方舟)回复于 2002-02-05 13:00:37 得分 15
>>rs.Open "select * from tj ", cn, 1, 3
假设你的号码字段为tjid,类型为int
rs.Open "select * from tj where tjid="&txttjid.Text, cn, 1, 3
if rs.eof then '没有重复的号码
rs.addnew
......
else '有重复号码
msgbox(出错信息)
end if
rs.close
set rs=nothing
Top
8 楼MMXMJ(破气式)回复于 2002-02-05 14:03:40 得分 0
谢谢各位了 我的分数有限不好意思哦 以后还请多帮助Top




