當您處理交易時,盡量縮短交易時間非常重要。 您可以使用 setAutoCommit 方法啟用或停用自動認可,自動認可的預設模式將會為您認可每個動作。 對於多數開發人員而言,此模式最容易使用。
當您使用手動交易時,請確認您的程式碼可以盡快認可交易。 讓交易持續開啟會讓其他使用者無法存取資料。 例如,一種良好的程式設計做法可能是在 catch 區塊中加入 rollback 呼叫,並在 finally 區塊中加入 commit 呼叫。 不過,這個做法取決於您應用程式的設計。
將交易規模保持較小,以提高並行處理能力。 例如,如果您啟動手動交易,並在 20,000 個資料列的資料表中修改 10,000 個資料列,您將針對其他所有使用者封鎖一半的資料表,即使他們只在讀取資料也一樣。 將您的修改減少為 2,000 個資料列則會讓 90% 的表格可以使用。
此外,如果您的應用程式預期會發生一些封鎖問題,請務必使用鎖定逾時設定。 您可以使用 setLockTimeout 方法來設定逾時。 鎖定逾時的預設值為 -1,也就是說,在等待鎖定時,它會永遠封鎖。 您可以將鎖定逾時設定為 30 秒;若某個連線遭另一個連線封鎖,則該連線會在 30 秒後逾時。