以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于查询表加载的问题。 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=139675) |
-- 作者:houseer -- 发布时间:2019/8/19 9:26:00 -- 关于查询表加载的问题。 在系统中用sql语句建立的查询表, 有没有办法让他在启动程序的时候不加载,因为这样会让启动时间变长。 我想在调用这个报表的时候再加载数据。 如果说让我用报表的时候,用代码创建这个报表的话,会用到大量的代码,设置格式字体什么的都得用代码实现去。 有没有即不影响程序效率,又节省代码量的方法。
|
-- 作者:有点蓝 -- 发布时间:2019/8/19 9:40:00 -- 建立查询表的时候加条件:1=2 加载的时候使用load即可 DataTables("某查询表").LoadFilter = "某某条件"
DataTables("某查询表").Load |
-- 作者:houseer -- 发布时间:2019/8/19 9:48:00 -- seect * from 订单 where 1=2 这样子嘛? loadfilter 后面的可以把查询表的where语句替换掉是吗? 但是如果是有其他条件呢? seect * from 订单 where id>30 and 1=2 这样不加载了 加载的时候: 是这样: loadfilter = "id>30" ?
|
-- 作者:有点蓝 -- 发布时间:2019/8/19 9:50:00 -- loadfilter 会替换之前的任何条件 DataTables("某查询表").Load |
-- 作者:houseer -- 发布时间:2019/8/19 9:56:00 -- 再麻烦版主一下: 如果是这种的呢? seect * from 订单 t1 inner join (seect count(id) as count from 子表 where id > 20 group by id) t2 on t1.id = t2.fid where t1.日期 > 0 and 1=2 这里面有俩where, 如果我用loadfilter 替换的话,能自动识别出来要替换后面那个where ? [此贴子已经被作者于2019/8/19 9:57:08编辑过]
|
-- 作者:y2287958 -- 发布时间:2019/8/19 10:21:00 -- 插一个相关的问题: 用以下代码可以生成一个“查询表1” Dim jb As New SQLJoinTableBuilder("查询表1","表A") jb.AddCols("*") jb.Build() MainTable = Tables("查询表1") 问题:现在来源表”表A”更改了某些内容,现在想在“查询表1”中更新,代码怎么写? 前提条件是:“查询表1”不能卸载(以上代码生成查询表时都是先卸载后再生成的)
[此贴子已经被作者于2019/8/19 10:21:15编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/8/19 10:51:00 -- 以下是引用houseer在2019/8/19 9:56:00的发言:
这种问题试试就知道了
再麻烦版主一下: 如果是这种的呢? seect * from 订单 t1 inner join (seect count(id) as count from 子表 where id > 20 group by id) t2 on t1.id = t2.fid where t1.日期 > 0 and 1=2 这里面有俩where, 如果我用loadfilter 替换的话,能自动识别出来要替换后面那个where ? [此贴子已经被作者于2019/8/19 9:57:08编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/8/19 10:54:00 -- 以下是引用y2287958在2019/8/19 10:21:00的发言:
没有其他办法,必须重新调用SQLJoinTableBuilder生成查询
插一个相关的问题: 用以下代码可以生成一个“查询表1” Dim jb As New SQLJoinTableBuilder("查询表1","表A") jb.AddCols("*") jb.Build() MainTable = Tables("查询表1") 问题:现在来源表”表A”更改了某些内容,现在想在“查询表1”中更新,代码怎么写? 前提条件是:“查询表1”不能卸载(以上代码生成查询表时都是先卸载后再生成的)
[此贴子已经被作者于2019/8/19 10:21:15编辑过]
|
-- 作者:y2287958 -- 发布时间:2019/8/19 10:56:00 -- 以下是引用有点蓝在2019/8/19 10:54:00的发言:
没有其他办法,必须重新调用SQLJoinTableBuilder生成查询 明白了,看来只能用Fill了 |