• 如何实现上一条、下一条的功能


          在做应用程序的时候,经常会遇到需要实现上一条、下一条的功能,例如,一个CS的项目中,首先有一个列表窗体,选中列表中的一项后点击“编辑”按钮,会进入到一个编辑窗体,在这个窗体上有可以需要使用上一条、下一条这样的功能,那么如何来实现它呢?

          思路:其实可以把它看成一种分页,只不过这种分页是一页一条而已。另外,还需要有一个定位,即当前是哪一条记录。解决办法其实只需要加一个where条件即可。请看下面的语句:

    上一条:
    select top 1 * from t_subject where subID not in
    (select top 1 subid from t_subject where subid=102 order by subid ) order by subid

    下一条:(反向排序即可)

    select top 1 * from t_subject where subID not in
    (select top 1 subid from t_subject where subid=102 order by subid desc ) order by subid desc

           注:1. 其中的102表示的是当前的记录,实际使用时可以通过传参实现。

                 2. 分页方法有很多种,可以使用其他的分页实现方法。

           另一种思路(哈哈,觉得有点笨):如果表中有一个连续的标识列字段,那么每次取的时候就可以直接将ID+1或ID-1了。但是,即使表中有标识列,也不可能保证编号是连续的,怎么办呢?可以创建一个临时表,表中除了包含原来表中的内容外,再使用IDENTITY()函数为其添加一个标识列,这样应该就OK了。

     

  • 相关阅读:
    get请求乱码情况
    write()和prinln()的区别?
    校验码实现
    下载图片代码并且解析乱码
    servlet下根据相对路径找资源
    url-pattern配置
    获取网站资源 getResourceAsStream
    Servlet线程安全性
    http1.1 协议响应方面参数
    HTTP1.1协议请求方面参数
  • 原文地址:https://www.cnblogs.com/lgzslf/p/1518058.html
Copyright © 2020-2023  润新知