我正在研究一個Oracle窗體(10g),它在一個畫布上有兩個塊。頂部的塊被稱爲QUERY_BLOCK,用戶填充後用數據行填充PRICING_BLOCK。Oracle Forms - 提交單個SQL語句而不是整個表單
但是,在QUERY_BLOCK中,我也有一個複選框,它需要分別對數據庫執行INSERT和DELETE。我WHEN-複選框改變的觸發看起來是這樣的:
begin
if :query_block.profile_code is not null then
if :query_block.CHECKBOX_FLAG = 'Y' then
begin
INSERT INTO profile_table VALUES ('Y', :query_block.profile_code);
end;
else
begin
DELETE FROM profile_table WHERE profile_code = :query_block.profile_code and profile_type_code = 'FR';
end;
end if;
end if;
end;
我知道,我需要添加某種這裏提交聲明的,否則記錄鎖並沒有什麼實際情況。但是,如果我做了COMMIT;那麼整個表單將通過驗證並更新所有更改的行。
我該如何執行這些單行查詢,而無需更新表單的其餘部分?