以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [测试]SQLTable的Fill似乎有Bug?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=3909)

--  作者:HLJ
--  发布时间:2009/8/18 18:03:00
--  [测试]SQLTable的Fill似乎有Bug?

见附件:
打开『窗口3』→『第1次点击按钮』→报错!→『第2次点击按钮』→正常


另:请教

1.窗口中的Table的三种类型『Normal』,『SQLTable』,『SQLQuery』可以通过代码指定吗?

2.动态SQLTable不可以编辑吗?
2.感觉动态SQLTable和SQLQuery的速度似乎不如动态地绑定DataList!


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:关联的替代.table

[此贴子已经被作者于2009-8-18 18:03:42编辑过]

--  作者:狐狸爸爸
--  发布时间:2009/8/18 18:13:00
--  
要下班了,bug明天再看,回答你的问题

1、Normal型的Table不能改,SQLTable和SQLQuery型的Table在执行Fill方法后,会根据IsQuery修改。
2、SQLTable可以修改,SQLquery不能修改
3、实际上是更快。
--  作者:HLJ
--  发布时间:2009/8/18 18:17:00
--  
以下是引用狐狸爸爸在2009-8-18 18:13:00的发言:
要下班了,bug明天再看,回答你的问题
....
2、SQLTable可以修改,SQLquery不能修改

1楼文件动态生成的SQLTable不可以修改呀!


--  作者:HLJ
--  发布时间:2009/8/18 21:43:00
--  
还有,以下在SQLTable中不能通过:

dim T as String
T = "Select 客户编号,数量,单价 From {订单} where 产品编号 = 3"
Tables("窗口3_Table1").Fill(T,False)

注:如将IsQuery属性设为True,则能通过
[此贴子已经被作者于2009-8-18 21:51:47编辑过]

--  作者:czy
--  发布时间:2009/8/18 23:51:00
--  
我也来补充一点。

按钮生成的不管IsQuery属性设为true还是false都不能编辑。
如果在table控件属性的Select语句中设置任何Select语句,然后用按钮生成的SQLTable就可以编辑。

Select语句动态生成的table感觉慢了。
--  作者:czy
--  发布时间:2009/8/19 0:03:00
--  
感觉用按钮代码动态生成table,应用窗口后进行测试bug比较多,特别是执行过代码后关闭窗口时经常出现崩溃(表现为窗口不能关闭,窗口控件全部消失,只能杀进程)。

下图错误操作说明,以楼主文件为例,在Select 语句中设置好Select语句,应用窗口,点窗口按钮,然后关闭应用窗口(出现机律比较大)。


图片点击可在新窗口打开查看此主题相关图片如下:qq截图未命名.jpg
图片点击可在新窗口打开查看

--  作者:czy
--  发布时间:2009/8/19 0:07:00
--  
Select语句中设置代码时,写入代码后,按取消按钮也接受输入。
--  作者:HLJ
--  发布时间:2009/8/19 11:34:00
--  


819版3-6楼的错误没有更正!


SQLTable的Fill
只支持:Select * From {订单},
不支持:Select 客户编号,数量,单价 From {订单}

[此贴子已经被作者于2009-8-19 11:36:33编辑过]

--  作者:狐狸爸爸
--  发布时间:2009/8/19 11:37:00
--  
收到,我再看一下.
--  作者:狐狸爸爸
--  发布时间:2009/8/19 11:42:00
--  
我知道了,对于返回部份列,而且不包括主件列的,Isquery参数必须设为True

Tables("窗口1_Table1").Fill("Select 客户,数量,单价 From {订单}",True)

否则必须包括主键列:

Tables("窗口1_Table1").Fill("Select [_Identify],客户,数量,单价 From {订单}",False)