我有一個表甲骨文插入或通過程序
CREATE TABLE STUDENT
(
ID INTEGER PRIMARY KEY,
FIRSTNAME VARCHAR2(1024 CHAR),
LASTNAME VARCHAR2(1024 CHAR),
MODIFIEDDATE DATE DEFAULT sysdate
)
我插入數據
insert into STUDENT (ID, FIRSTNAME, LASTNAME, MODIFIEDDATE) values (1,'Scott', 'Tiger', sysdate);
當我要插入數據的記錄的行更新一排,我需要編寫一個程序或功能,執行以下操作:
- 如果沒有記錄爲相同的ID插入行。
- 如果有相同的id和數據匹配的記錄,則什麼都不做。
- 如果存在相同ID的記錄但數據不匹配,則更新數據。
我是oracle新手。從java結束,可以通過id選擇記錄,然後更新該記錄,但這會進行2次數據庫調用。只是爲了避免我正在嘗試使用過程更新表。如果同一個數據庫調用可以完成,請提及。
的過程是不是絕對必要的;所有的程序都需要從一個JDBC調用中執行多個DML操作。從JDBC直接使用合併語句是好的。 –
這是真的科林,並感謝編輯 – bpgergo
一些開發人員 - 最着名的是史蒂芬Feuerstein - 喜歡包裝*存儲過程中的所有*數據庫訪問。我不想:我把關係模型當作我的「界面」。 –