以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  使用外部数据源时DataTable与外部数据表不是一个东西吗?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=79653)

--  作者:wohenguaia
--  发布时间:2016/1/6 19:58:00
--  使用外部数据源时DataTable与外部数据表不是一个东西吗?

学习这篇的时候的疑问:如题

SQLFind

SQLFind和Find类似,用与查找符合条件的行,如果找到的话,返回找到的行,否则返回Nothing。
不过Find是在DataTable查找符合条件的行,而SQLFind是在后台数据库中查找。

语法:


--  作者:大红袍
--  发布时间:2016/1/6 20:02:00
--  

Datatable,可以只加载外部表的一部分数据。

 

比如数据库有1万行,但datatable可以只加载100行到项目了。

 

要查找数据的时候,就必须用SqlFind


--  作者:wohenguaia
--  发布时间:2016/1/6 20:09:00
--  
ok,谢谢了
--  作者:wohenguaia
--  发布时间:2016/1/6 20:24:00
--  
如果是内部数据源,是不是datatable也可以只加载部分数据?
还是datatable本来就包含所有的数据?如果是数据多了,还要死机的啊

--  作者:大红袍
--  发布时间:2016/1/6 20:38:00
--  

 可以只加载部分,看看

 

http://www.foxtable.com/help/topics/0669.htm

 


--  作者:wohenguaia
--  发布时间:2016/1/6 20:44:00
--  
是不是可以这样理解,内部数据源也是一个像Accse,sql一样的数据库,datatable只是从这个数据库中加载部分数据到内存中,也就是说datatable是个内存中的数据集?
[此贴子已经被作者于2016/1/6 20:46:59编辑过]

--  作者:大红袍
--  发布时间:2016/1/6 20:47:00
--  
 是的,datatable在内存里。
--  作者:wohenguaia
--  发布时间:2016/1/6 20:48:00
--  
那么内部数据源把数据存哪里了呢?
--  作者:大红袍
--  发布时间:2016/1/6 20:54:00
--  
 可以理解成内部有一个access数据库,存在里面。
--  作者:wohenguaia
--  发布时间:2016/1/6 21:11:00
--  
DataTables(“产品”).SQLFind()是不是可以代替下面语句:
Dim dt As DataTable
Dim
cmd As N ew SQLCo mmand
cmd
.Connect ionName = "数据源名称"
cmd
.Comm andText = "Se lect 类别, Max(编号) As 编号 From {产品}"
dt
= cmd.Execut eReader
[此贴子已经被作者于2016/1/6 21:11:35编辑过]