我有一張表格表示校園中的位置。我在網絡程序中爲用戶顯示這些位置,並且我想讓他們能夠更改位置顯示的順序。我爲此列出了一個名爲ord
的列。我現在想爲用戶創建了一個方法來更新該列,並確保
1)沒有ord
複製
2)所有ord
值> = 0 & & <行數(表) 。使用列來確定oracle表格的顯示順序
我想我應該用觸發器做到這一點。首先,在我進行更新之前,我使用代碼來確保表格的行數大於或等於0.& <。然後,一旦插入了該值,我需要修復它創建的副本。我想要做的只是切換值。不過,我得到了可怕的預言變異表錯誤,當我嘗試這個觸發:
create or replace
trigger plantry_campus_edit_after
after update on plantry_campus
for each row
declare
v_pkid number;
begin
SELECT pkid INTO v_pkid FROM plantry_campus WHERE ord = :new.ord && pkid != :new.pkid;
UPDATE plantry_campus SET ord = :old.ord WHERE pkid = v_pkid;
end;
我寧願做在數據庫中,而不是在代碼中。有關我如何完成此任務的任何建議?