以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]fill后,源表会增加空行  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192465)

--  作者:chnfo
--  发布时间:2024/6/24 13:50:00
--  [求助]fill后,源表会增加空行
有一个数据表TbData,另有一个临时表cs

命令窗口执行代码:
DataTables("CS").Fill("Se    lect [_Identify] From {TbData} where [_Identify] is null", False)
DataTables("CS").AddNew

这时候,源数据表TbData没有任何异常。

但在关闭项目重新打开以后,TbData会增加一个空数据行

如果在命令窗口执行代码:
DataTables("CS").Fill("Se      lect [_Identify] From {TbData} where [_Identify] is null", False)
DataTables("CS").AddNew

DataTables.Save

DataTables("TbData").LoadFilter = ""

DataTables("TbData").Load
output.Show(DataTables("TbData").DataRows.Count)

每执行一次,输出的数据行数就会增加1

fill后,会对源数据造成影响?

--  作者:有点蓝
--  发布时间:2024/6/24 15:13:00
--  
不如先看看帮助,sqltable是可以保存的


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


--  作者:chnfo
--  发布时间:2024/6/24 15:21:00
--  
DataTables("CS")本身就是一个临时表,是否保存没什么意义(即使保存也是临时保存)

但它是从TbData作为源数据表fill来的。

如果参数设为false,那么DataTables("CS")保存,为什么TbData会增加空行呢?

--  作者:有点蓝
--  发布时间:2024/6/24 15:40:00
--  
参数设为false,fill后DataTables("CS")已经是另外一个表,和CS没有半毛钱的关系,其实就是DataTables("TbData"),没有任何区别
--  作者:chnfo
--  发布时间:2024/6/24 15:44:00
--  
源数据表是TbData
CS是从fill方法从TbData中用SQL提取数据形成的。
如果这时候CS表增加行,那么TbData表也会增加行?

--  作者:chnfo
--  发布时间:2024/6/24 15:47:00
--  
源数据表是TbData
CS是从fill方法从TbData中用SQL提取数据形成的。
如果这时候CS表增加行,那么TbData表也会增加行?

DataTables("表A").Fill("Se   lect * From {订单}", False)

执行上述代码后,表A将显示订单表的数据,尽管其名称还是表A。


这时候表A只是显示订单数据而已,但不能说表A增加了两行,订单表就要增加两行吧?


--  作者:有点蓝
--  发布时间:2024/6/24 16:00:00
--  
总之fill之后,已经和原来的表A没有关系了,可以看做就是一个订单表