如题。
开发工具:
场景:将数据以列表的格式展示,想根据某一列,对当前展示的所有数据进行升序/降序排列。
问题:1.是否可以定义全局变量,当点击按钮之后改变全局变量的值,然后修改SQL语句,点击第一次,是降序,点击第二次是升序,从而进行判断是升序还是降序;
2.在1中,每次点击按钮都需要执行SQL语句,但因为数据都已经查询展示出来,那么,是否,有方法,可以直接对这些数据进行操作?
3.其他方法;
开发工具:
场景:将数据以列表的格式展示,想根据某一列,对当前展示的所有数据进行升序/降序排列。
问题:1.是否可以定义全局变量,当点击按钮之后改变全局变量的值,然后修改SQL语句,点击第一次,是降序,点击第二次是升序,从而进行判断是升序还是降序;
2.在1中,每次点击按钮都需要执行SQL语句,但因为数据都已经查询展示出来,那么,是否,有方法,可以直接对这些数据进行操作?
3.其他方法;
解决方案 »
- 新手求教一个问题:oracle服务端的防火墙如何设置?
- HP-UX中应用程序无法启动oracle 10g
- 同库schema同步 如何实现?
- 在存储过程中,图片内容参数怎么传递!
- 数据库事件触发器
- oracle 求sql,表中有个字段companyName,这个字段中的值如果有相似值则更新为相同值
- 我的oracle存储过程为什么执行不对?
- 如何在创建表以及索引时的时候制定表空间,高高分紧急求助(100)
- 如何在不安装oracle客户端的情况下,连接到oracle数据库,对服务器端数据库进行操作??
- (Tuning the Shared Pool Reserved Space)翻译一句话
- 数据量少时的select into和游标
- oracle求解答怎么去除重复
单击操作时设置块order_by属性,然后重新查询
这种实现简单方案2
块设置为非数据块,查询时使用游标循环向界面赋值
重新排序时,使用冒泡排序,比较相邻两行,根据需要,互换两记录内容这种实现比较复杂,但是不需要频繁访问数据库方案3
借助javabin存储数据,使用java代码对数据进行排序,然后将数据刷新到界面上,
同方案2一样,需要使用非数据块,查询和刷新操作时,代码循环赋值初步就想到这几种,看看其他人还有没有其他思路
方案如下:采用两个button按钮,DESC_Button,ASC_Button,第二个按钮设置高度为0;当用户点击DESC_Button按钮时,在WHEN_BUTTON_PRESSED里面,设置自身ITEM高度为0,ASC_Button按钮的高度为正常值14;并且调用自己写的程序单元,拼接SQL语句,'ORDER BY COL_NAME DESC ',(因为我查询之前还有几个需要选择的变量,需要将这几个变量拼接到SQL条件中),执行SQL语句;ASC_Button中代码与此类似,反着来就行。
优点:便于理解,一看就懂(太LOW了的方法);
缺点:每次点击都需要执行SQL语句,(多次执行SQL的缺点百度一大堆),毕竟数据已经查出来了,只是需要整理一下展示的顺序,所以正常的操作应该是对已有的数据进行操作,而不是再去数据库里组织;
本人初次接触,才疏学浅,非数据块的方式对我而言,太过复杂,自学(还没书,没好用的PDF)起来,根本看不懂
还望有大神,能给些这方面的,好用的学习方式,诸如PDF,网站,帖子,之类的,授人以鱼不如授人以渔嘛~~~
谢谢@ghx287524027 和 @bw555 两位大大,受益匪浅,谢谢!
其实最简单的还是版主说的 set_block_property()