我在Oracle中一個簡單的表有三列:我將如何編寫一個觸發器來重新排列序列號?
ID NCHAR(10)
NAME NCHAR(50)
SEQ NUMBER
的SEQ
領域是基於0有允許用戶拖動記錄和重新排序列表(使用jQuery排序)。我試圖弄清楚如何改變所有的序列號,以便它們在數據庫中以正確的順序結束。
我開始創建觸發器之前更新改變都基於:OLD
和:NEW
值SEQ
的數字,但是當我意識到這將導致無限循環當觸發只想繼續運行,因爲我已停止更新一堆記錄。
有沒有一種方法可以得到觸發器來執行此行爲,還是應該手動將其寫入代碼?
在此先感謝
爲什麼要存儲新的序列?畢竟,用戶可以不斷改變它。爲什麼不只是通過(服務器端)更改查詢的順序,或者緩存數據sans命令並對緩存(客戶端)進行排序? – tbone
這是一種元表,它包含以前在應用程序中硬編碼的信息。我正在製作管理頁面,以便管理員可以更改顯示內容的順序。沒有任何領域在邏輯上訂購記錄,我們想要的不僅僅是按字母順序排列的東西。它們也不會被排序在客戶端,因爲它們對於普通用戶來說顯得非常靜態。 – tedski