Foxtable(狐表)用户栏目专家坐堂 → [求助] 加载数据,不理解呀!


  共有6479人关注过本帖树形打印复制链接

主题:[求助] 加载数据,不理解呀!

帅哥哟,离线,有人找我吗?
lsy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
[求助] 加载数据,不理解呀!  发帖心情 Post By:2013/3/30 14:20:00 [只看该作者]

两个按钮,代码如下:

一、初始加载

DataTables("行政区域").LoadTop = "10"
DataTables("行政区域").Load()

二、刷新

DataTables("行政区域").LoadFilter = ""
DataTables("行政区域").Load()

 

直接点第二个按钮,加载全部;点了第一个按钮,再点第二个按钮,也只能加载10行了,难道只能在第一个加载的基础上加载,不能从DataTable重新加载?

这问题又该如何解决呢?


 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2013/3/30 14:27:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/3/30 14:31:00 [只看该作者]

以下是引用muhua在2013-3-30 14:27:00的发言:

DataTables("行政区域").LoadTop = "10"

 

这个是设置 DataTables 的条数的,如果第二个按钮要加载全部,那就要

 

 

DataTables("行政区域").LoadTop = ""

DataTables("行政区域").Load()

还是觉得有点怪怪的,这两个按钮应该没联系才对。

 

谢谢,实践证明你是对的,那就以你为标准。

 

再试的结果是:

如果第一个按钮与第二个按钮都用LoadTop,或者都用LoadFilter,就没问题,如果不一致,第二个按钮就受第一个按钮的制约。

[此贴子已经被作者于2013-3-30 14:46:59编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/3/30 15:19:00 [只看该作者]

测试了三种查找最大号的方法。

第一个最快:

Dim s As String = DataTables("数据字典").Compute("Max(编号)")
DataTables("数据字典").LoadFilter = "编号 = '" & s & "'"
DataTables("数据字典").Load()

第二个似乎稍慢,不明显:

DataTables("数据字典").LoadOrder = "编号 Desc"
DataTables("数据字典").LoadTop = "1"
DataTables("数据字典").Load()

第三个慢的让人烦躁了:

Dim dr As DataRow = DataTables("数据字典").Find("编号 = max(编号)")
DataTables("数据字典").LoadFilter = "编号 = '" & dr("编号") & "'"
DataTables("数据字典").Load()


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/30 15:23:00 [只看该作者]

你的都不对,这样才对:
 
 
Dim ld As Long
Dim cmd As New SQLCommand
cmd.CommandText = "Select Max(编号) From {订单}"
ld = cmd.ExecuteScalar()

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/3/30 15:28:00 [只看该作者]

以下是引用狐狸爸爸在2013-3-30 15:23:00的发言:
你的都不对,这样才对:
 
 
Dim ld As Long
Dim cmd As New SQLCommand
cmd.CommandText = "Select Max(编号) From {订单}"
ld = cmd.ExecuteScalar()

呵呵,我是测试查找效率,不是真正来找最大编号,Sql,不绕弯,直奔主题,当然最快了。

管理外部数据源,尽量用SQL,谢谢你。

[此贴子已经被作者于2013-3-30 15:31:05编辑过]

 回到顶部