以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]表达式中SQL表名的使用 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=106667) |
-- 作者:blsu33 -- 发布时间:2017/9/13 14:35:00 -- [求助]表达式中SQL表名的使用 老师, 关于SQL查询表生成查询命了使用 例如: DIM dt as datatable .... cmdtext="Select {表A}.*,{表B}.*,{表C}.*,{表D}.*Fr om ......JOIN.....后面省略了" dt =cmd.ExecuteReader() 假如生成了上述的临时表 表A 表B 都有 第一列,查询表可以看到临时表 有 表A.第一列 表B.第一列 DIM dt2 as datatable=datatables(“表B”) 下面的写法 是否正确 Dim drs2 As List (of DataRow)=dt.SQLSelect("{表A}.[第一列]=\'"& dr("第一列") &"\'") 这么写正确 |
-- 作者:有点甜 -- 发布时间:2017/9/13 14:42:00 -- 你在sql测试窗口,拷贝你的sql语句加上你的条件语句测试,如果没报错,就是正确的。 |
-- 作者:blsu33 -- 发布时间:2017/9/13 14:48:00 -- 恩 这块 经常出现报错的 只要更改SQL语言附加额外新增表 就有报错危险, 老师 不存在下面情况吧 Dim drs2 As List (of DataRow)=dt.SQLSelect("{表A}.[第一列]=\'"& dr("{表B}.[第一列]") &"\'") 这么写正确 |
-- 作者:有点甜 -- 发布时间:2017/9/13 15:23:00 -- 如果是sql语句,要这样写 {表A}.第一列
如果是foxtable里面使用,这样写 http://www.foxtable.com/webhelp/scr/0193.htm
你sql生成的时候,指定列名咯,这样就没问题。 |
-- 作者:blsu33 -- 发布时间:2017/9/13 16:52:00 -- 100%不存在下面标注颜色的情况出现 吧 Dim drs2 As List (of DataRow)=dt.SQLSelect("{表A}.[第一列]=\'"& dr("{表B}.[第一列]") &"\'") [此贴子已经被作者于2017/9/13 16:54:02编辑过]
|
-- 作者:有点甜 -- 发布时间:2017/9/13 17:00:00 -- 查看表结构
http://www.foxtable.com/webhelp/scr/0193.htm
里面是什么,你就要写什么。 |
-- 作者:blsu33 -- 发布时间:2017/9/14 16:43:00 -- 老师, 用SQL生成的临时表dt001(由表A 与表B构成,select {表A}.*,{表B}.*,)表A有列名“第一列”,表B有列名“第一列”,不加载数据,用SQLselect 查询条件如下就会出错 DIM DT1 AS datatable=dt DIM DT2 AS datatable=dt dim dr1 as datarow=DT1.datarows(0) dim dr2 as datarow=DT2.SQLselect("{表A}.[“第一列”]=’“dr1(”第一列“)”‘") 这个dr1(”第一列“)好像系统不会判断是表A还是表B ,这时候好像就会报错,是这样吗? |
-- 作者:有点甜 -- 发布时间:2017/9/14 17:04:00 -- 1、为什么要用*?为什么不能一个一个列名的指定?这样才没有问题;
2、查看表结构,看其列名是什么,是什么dr里面就写什么 |