以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- SQLFIND 找不到相应数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=61708) |
-- 作者:tesia255 -- 发布时间:2014/12/17 16:47:00 -- SQLFIND 找不到相应数据 目的:根据A表【AGENT_CODE】列值得变化,将关联的B表的【INSTITUTION】列值赋值给 A表的【MECHANISM】列(B表限制初始加载量了) Select Case e.DataCol.Name Case "AGENT_CODE" Dim pr As DataRow = e.DataRow If pr.IsNull("AGENT_CODE") Then Else \'If e.DataRow("AGENT_CODE") IsNot Nothing OrElse e.DataRow("AGENT_CODE") <> "" Then Dim dr As DataRow Dim sr As String = pr("AGENT_CODE") dr = DataTables("AGENT_INFORMATION").SQLFind("AGENT_CODE = \'"& sr &"\' ") If dr IsNot Nothing Then pr("MECHANISM")=dr("INSTITUTION") Else msgbox("没找到此人数据") End If End If End Select
每次执行都是现实 “没有找到此人数据” 但是 实际数据库中有那个人数据 将 "& sr &"\' 改成真实数据 也是现实没有找到 是代码 哪里写错了吗? 请版主指教~~~ 谢谢啦~ [此贴子已经被作者于2014-12-17 16:51:59编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/12/17 16:50:00 -- 找不到的话,说明条件就是找不到的。
注意数据库的数据,是否有空格之类的影响了。 |
-- 作者:tesia255 -- 发布时间:2014/12/17 17:02:00 -- 换了个写法可以了 Case "AGENT_CODE" Dim pr As DataRow = e.DataRow If pr.IsNull("AGENT_CODE") Then Else Dim sr As String = pr("AGENT_CODE") Dim Products1 As List(Of String) Products1 = DataTables("AGENT_INFORMATION").SQLGetValues("INSTITUTION", "AGENT_CODE = \'"& sr &"\'" ) For Each Product As String In Products1 pr("CITIES")= Product Next End If |
-- 作者:有点甜 -- 发布时间:2014/12/17 17:04:00 -- 呃,不会吧?SqlFind的封装对Oracle有问题? |