以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 多条件find返回错误? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176568) |
-- 作者:hitzfeld -- 发布时间:2022/4/18 16:13:00 -- 多条件find返回错误? Dim x As String = e.Form.Controls("combobox1").text Dim y As String = e.Form.Controls("combobox2").text Dim z As String = e.Form.Controls("combobox3").text Dim a As String = e.Form.Controls("textbox1").text Dim d As DataRow = DataTables("hqhz").Find("bh = \'"& x &"\' and lx = \'"& y &"\' and zy = \'"& z &"\'") If d IsNot Nothing Then msgbox("已存在相同区域,无法添加") Return Else Tables("hqhz").addnew Tables("hqhz").Current("bh") = e.Form.Controls("combobox1").text Tables("hqhz").Current("lx") = e.Form.Controls("combobox2").text Tables("hqhz").Current("zy") = e.Form.Controls("combobox3").text Tables("hqhz").Current("qc") = e.Form.Controls("textbox1").text Tables("hqhz").save DataTables("hqhz").load msgbox("添加完成") End If 这段代码,无论怎么搞都是返回"已存在相同区域,无法添加",但是我非常确定xyz的值是唯一的,并且后台的数据表实际上是有添加记录,但是处于未保存状态。 之前find也用过很多次了,单条件下没用碰到过这样的问题。难道是find不能使用多条件?
|
-- 作者:有点蓝 -- 发布时间:2022/4/18 16:32:00 -- find用法没有任何问题。肯定有重复的数据。find是查询前台界面数据的,和后台数据库没有什么关系,和保存不保存也没有什么关系。 combobox1这些控件是不是绑定了列? 新增行赋值的用法反而是不正确的,应该这样用 dim r as row = Tables("hqhz").addnew r("bh") = e.Form.Controls("combobox1").text |
-- 作者:hitzfeld -- 发布时间:2022/4/18 22:25:00 -- 谢谢蓝老师!果然是绑定列了!太不应该了......... |