以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 查询表直接操作 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=42239) |
-- 作者:bm -- 发布时间:2013/11/6 19:42:00 -- 查询表直接操作 哪位高手帮忙优化下代码。Tables("窗口1_Table3")是查询表。(二个表查询的) Tables("窗口1_Table3").Fill("Select {车辆费用}.[_Identify],业务编号,客户,{车辆费用}.作业日期,关单号,{车辆费用}.箱型箱量,[流向_提箱点],[流向_门点],[流向_还箱点],支出项目,金额,收款人,{车辆费用}.审核号,{车辆费用}.审核日期,审核 From {业务大表} Inner JOIN {车辆费用} ON {车辆费用}.[业务编号] = {业务大表}.[编号] WHERE {车辆费用}.[_Identify] Is Null","ZHANG",True)
If e.form.controls("收款人").value = "" Then Dim d As Date = Date.Today |
-- 作者:有点甜 -- 发布时间:2013/11/6 20:00:00 -- 无从下手 |
-- 作者:bm -- 发布时间:2013/11/6 20:35:00 -- 希望再看看 就是 表a 是要进行批量操作的。表b不需要。 但是只看表a不完整。 SQLTable只能是一个表生成(但是如果用一个表内容不完整),所以只能用SQLQuery 但是SQLQuery是不能保存的。 所以 第一步,只能通过代码生成SQLQuery(这样看的就比较清楚) 第二部,批量操作代码生成的SQLQuery。(但是只是表面操作成功了。) 第三部,通过批量操作SQLCommand,改变数据库。(根据表a的[_Identify]列) 这样做是不是太繁琐。有没有更好的办法 |
-- 作者:bm -- 发布时间:2013/11/6 20:39:00 -- 用了一段时间没有出现错误 但是感觉相当非主流。能不能有其他办法 [此贴子已经被作者于2013-11-6 20:39:37编辑过]
|
-- 作者:有点甜 -- 发布时间:2013/11/6 20:51:00 -- 为什么一定要连接两个表?一个表A,一个关联表表A.表B,这样也基本满足需求的。 如果要用查询表,保存只能是自己取值和保存值了。
|
-- 作者:bm -- 发布时间:2013/11/6 20:54:00 -- 用关联表也可以生成SQLTable的吗? 批量操作有很多条的。一个一个太麻烦了
[此贴子已经被作者于2013-11-6 20:56:10编辑过]
|
-- 作者:有点甜 -- 发布时间:2013/11/6 20:58:00 -- 表A和表B,数据才完整。表A表B关联以后,数据不也就完整了么。虽然这样显示不太直观,但操作方便。 |
-- 作者:bm -- 发布时间:2013/11/6 21:04:00 -- 如果表b有100多条,表a只有10几条。表a不要操作。表b全部要操作。那不是相当麻烦而且是要批量的奥。 而且还要 Tables("已审核费用").Filter = "" Dim d As Date = Date.Today [此贴子已经被作者于2013-11-6 21:07:09编辑过]
|
-- 作者:bm -- 发布时间:2013/11/7 0:18:00 -- 简单点讲。就是直接在查询表编辑数据(只是为了看到)。然后通过SQLCommand。直接改变后天数据。可行伐。会不会容易造成错误。有没有其他方法 |
-- 作者:狐狸爸爸 -- 发布时间:2013/11/7 8:35:00 -- 如果不想写SQL语句来保存修改,那么表A、表B和查询表都加载,将查询表的AllowEdit属性设置为True,设置查询表的DataColchanged事件,捕获用户所做的修改,然后在表A、表B中找出对应的行写入用户做出的修改,最后保存表A和表B即可。
|