|
本帖最后由 ganlinlao 于 2013-12-8 23:54 编辑
思路都是差不多,无论如何都得进行一次查询。
1、单窗体情况下:意味着每一次更新都得查询一次。
如何限制文本框输入,这里就略过了。
Dim conn as ado.connection,rst as ado.recodset,strwh as string
If Me.MachineName <> "" And Me.DyelotDate <> "" Then
strWh = "select id from Tbl_DyeHistory where [DyelotDate]=#"Me.DyelotDate & "# and [MachineName]='" & Me.MachineName & "'" ‘这里假设ID是主键,同一天同一台机子不允许重复,如果有另外条件自己加。因为主键有索引,查询最快
set conn=currentprojet.connection
set rst=conn.execute(strWh)
If not(rst.eof and rst.bof) then //有数据就抛出错误
MsgBox "请确认是否重复?排其它缸号", vbQuestion + vbOKOnly
Exit Sub
Else
rs.update //这里的rs是你的窗体绑定的recordset
rst.close
set rst=noting
end if
end if
2、连续窗体或数据列表模式:
一次查询,多次匹配。用getstring获得匹配字符。然后进行连续匹配。有空再写
以上代码是随手在网页写的,如有错误,请原谅 |
|