Foxtable(狐表)用户栏目专家坐堂 → [求助]分页加载遇到难题


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

主题:[求助]分页加载遇到难题

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


加好友 发短信
等级:三尾狐 帖子:629 积分:4786 威望:0 精华:0 注册:2014/9/17 11:34:00
[求助]分页加载遇到难题  发帖心情 Post By:2016/5/23 16:18:00 [只看该作者]

各位老师,我先项窗口的表绑定一张查表:

dim cmd as new sqlcommand
dim dt as datatables
cmd.c
 cmd.CommandText = "select Province as '省份',City as '城市',Town as '区县',Countryside as  '乡镇',Country as  '村' f rom {N_RelaNQ} inner join {N_ServiceAddr} on {N_RelaNQ}.AddrId={N_ServiceAddr}.AddrId  where InstiUserId='" & Vars("InstiID") & "'"
 dt = cmd.ExecuteReader()
Tables("InstiWorkList_table1").DataSource =dt

然后写了分页加载的代码:
                With DataTables("InstiWorkList_table4")
                    .LoadFilter = "" '清除加载条件
                    .LoadPage = 0 '加载第一页
                    .LoadTop = 5 '每页5行
                    .Load()
MessageBox.show(.TotalPages)
                    Forms("InstiWorkList").Controls("TextBox1").Value = 1 & "/" & .TotalPages
                End With
结果:messagebox.show返回的结果是-1,请问老师问题出哪了?
[此贴子已经被作者于2016/5/23 16:19:35编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/23 16:23:00 [只看该作者]

加上_Identify列试试

 

select {N_RelaNQ}.[_Identify] * 10000 + {N_ServiceAddr}.[_Identify] as _Identify, Province as '省份',


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


加好友 发短信
等级:三尾狐 帖子:629 积分:4786 威望:0 精华:0 注册:2014/9/17 11:34:00
  发帖心情 Post By:2016/5/23 16:34:00 [只看该作者]

老师,有点看不懂你的代码?你的意思是让我把主键也加上吗?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/23 16:35:00 [只看该作者]

在sql语句那里加上2楼的代码。

 

如果也不行的话,分页就不能那样做了,必须单独编写sql语句分页。


 回到顶部
帅哥哟,离线,有人找我吗?
新航程小何
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:629 积分:4786 威望:0 精华:0 注册:2014/9/17 11:34:00
  发帖心情 Post By:2016/5/23 16:40:00 [只看该作者]

好吧,不行

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/23 16:44:00 [只看该作者]

那就单独编写sql语句,比如

 

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

 

select top 25 * f rom {表A} where [_identify] not in (select top 25*2 [_identify] f rom {表A} order by [_identify]) order by [_identify]

 


 回到顶部
帅哥哟,离线,有人找我吗?
新航程小何
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:629 积分:4786 威望:0 精华:0 注册:2014/9/17 11:34:00
  发帖心情 Post By:2016/5/23 17:08:00 [只看该作者]

恩恩,我在看教程的时候被搞晕了
Select * F rom (S elect Row_Number() Over(Order by [订单ID]) As RowNum, * f rom 订单) As a Where RowNum >= 1 And RowNum <= 50
这句代码怎么解读

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/23 17:15:00 [只看该作者]

对于 订单表,根据 订单id,从1-n进行编号,然后取1-50行


 回到顶部