如題。
開發工具:

場景:
將資料以串列的格式展示,想根據某一列,對當前展示的所有資料進行升序/降序排列。問題:1.是否可以定義全域變數,當點擊按鈕之后改變全域變數的值,然后修改SQL陳述句,點擊第一次,是降序,點擊第二次是升序,從而進行判斷是升序還是降序;
2.在1中,每次點擊按鈕都需要執行SQL陳述句,但因為資料都已經查詢展示出來,那么,是否,有方法,可以直接對這些資料進行操作?
3.其他方法;
uj5u.com熱心網友回復:
執行動態陳述句uj5u.com熱心網友回復:
可通過什么方式來控制動態陳述句中 “DESC” 的有無呢?就是怎么來實作升序降序?uj5u.com熱心網友回復:
怎么對動態陳述句中的升序降序進行控制?
uj5u.com熱心網友回復:
單選鈕,復選框都可以,根據這兩個的值確定拼布拼接 descuj5u.com熱心網友回復:
方案1單擊操作時設定塊order_by屬性,然后重新查詢
這種實作簡單
方案2
塊設定為非資料塊,查詢時使用游標回圈向界面賦值
重新排序時,使用冒泡排序,比較相鄰兩行,根據需要,互換兩記錄內容
這種實作比較復雜,但是不需要頻繁訪問資料庫
方案3
借助javabin存盤資料,使用java代碼對資料進行排序,然后將資料重繪到界面上,
同方案2一樣,需要使用非資料塊,查詢和重繪操作時,代碼回圈賦值
初步就想到這幾種,看看其他人還有沒有其他思路
uj5u.com熱心網友回復:
版主好!第一種方案依舊是需要執行SQL陳述句的;第二種方案實作方式和我現在手里的例子應該是大同小異,也是非資料塊的方式,至于游標,本人剛接觸,之后學習學習這個東東;第三種方案好高端。。。很好奇,Java代碼是可以寫在Form Builder里面嗎?以什么形式存在,腳本?jar包?
uj5u.com熱心網友回復:
我自己采用了一種笨辦法實作了上述需求。方案如下:采用兩個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 兩位大大,受益匪淺,謝謝!
uj5u.com熱心網友回復:
哈哈,我也是這種方法
uj5u.com熱心網友回復:
其實最簡單的還是版主說的 set_block_property()
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/117727.html
標籤:開發
