以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 【求助】数据引用 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=93597) |
-- 作者:好吧 -- 发布时间:2016/12/2 8:49:00 -- 【求助】数据引用 各位老师,请教个问题:foxtable中有两张表,表A、表B,数据库中有张表C,现在想在表A中引用数据库表C的数据,但是表A跟表C没有相同的列,表B跟表C就有相同的列(例如 编码列相同),表A跟表B也有相同列(例如 订单号),如果表A要引用数据库中表C中数据的话该怎么做呢??请赐教,谢谢!! |
-- 作者:有点蓝 -- 发布时间:2016/12/2 9:12:00 -- 通过表A订单号查找到表B的编码,在通过编码到表C查询,就是要查2次 |
-- 作者:好吧 -- 发布时间:2016/12/2 10:37:00 -- 下面是我写的代码,详细错误信息是:调用的目标发生了异常。未将对象引用设置到对象的实例。 找了很久不知道是什么原因,请老师帮忙看下,谢谢啦!! If e.DataCol.Name = "订单号" Then Dim nms() As String = {"产品编码","产品类别","产品名称"} If e.NewValue Is Nothing Then For Each nm As String In nms e.DataRow(nm) = Nothing Next Else Dim a As String Dim dr1 As DataRow Dim dr2 As DataRow dr1 = DataTables("表B").Find("[订单号] = \'" & e.NewValue & "\'") If dr1 IsNot Nothing a = dr1("编码") End If dr2 = qj1.sqlfind("[编码] = \'" & a & "\'") If dr2 IsNot Nothing For Each x As String In nms e.DataRow(x) = dr2(x) Next End If End If End If
|
-- 作者:有点蓝 -- 发布时间:2016/12/2 11:05:00 -- If e.DataCol.Name = "订单号" Then Dim nms() As String = {"产品编码","产品类别","产品名称"} If e.NewValue Is Nothing Then For Each nm As String In nms e.DataRow(nm) = Nothing Next Else Dim dr1 As DataRow Dim dr2 As DataRow dr1 = DataTables("表B").Find("[订单号] = \'" & e.NewValue & "\'") If dr1 IsNot Nothing dr2 = qj1.sqlfind("[编码] = \'" & dr1("编码") & "\'") If dr2 IsNot Nothing For Each x As String In nms e.DataRow(x) = dr2(x) Next End If End If End If End If 上面的qj1表是否已经定义?
|
-- 作者:好吧 -- 发布时间:2016/12/2 11:16:00 -- 定义了, |
-- 作者:好吧 -- 发布时间:2016/12/2 11:22:00 -- 老师,我想问下: 生产临时表的时候,where后面一定要用主键[_Identify]??我用其他列不空的不行?? |
-- 作者:有点蓝 -- 发布时间:2016/12/2 11:26:00 -- 什么意思?没看懂 |
-- 作者:好吧 -- 发布时间:2016/12/2 11:35:00 -- 为什么我要发那段代码发不出去??
|
-- 作者:有点蓝 -- 发布时间:2016/12/2 11:36:00 -- 有sql?看看http://foxtable.com/bbs/dispbbs.asp?boardid=2&Id=69632 |
-- 作者:好吧 -- 发布时间:2016/12/2 11:39:00 -- 我想问就是下面这段代码,第三行where后面一定要是主键[_Identify]??我用其他列不空的不行?? Dim cmd As New SQLCommand cmd.C cmd.CommandText = "SELECT * Fro m {产品规格表} Where [ID] Is Null" qj1 = cmd.ExecuteReader
|