我有一個MySQL數據庫與幾個表,我們姑且稱之爲表1,表2,等我不得不多次調用每個表哪個選項最有效的插入數據到MySQL數據庫?
這是最有效的,
a)收集所有查詢在一個消息中,每個表然後分別執行它們,例如:
INSERT INTO TABLE1 VALUES (A,B);
INSERT INTO TABLE1 VALUES (A,B);
...執行
INSERT INTO TABLE2 VALUES (A,B);
INSERT INTO TABLE2 VALUES (A,B);
... EXECUT È
b)收集在一個長消息的所有查詢(未在表中的順序),則執行這個查詢,e.g:
INSERT INTO TABLE1 VALUES (A,B);
INSERT INTO TABLE2 VALUES (B,C);
INSERT INTO TABLE1 VALUES (B,A);
INSERT INTO TABLE3 VALUES (D,B);
c)中別的東西?
目前我正在做它像選項(二),但我想知道是否有更好的方法。
(我正在使用jdbc訪問數據庫,在一個groovy腳本中)。
謝謝!
我聽說過批處理模式,這是一個java的例子http://www.java2s.com/Code/Java/Database-SQL-JDBC/BatchupdateforMySQL.htm。然而,用Postgresql做類似的事情並沒有給我帶來任何顯着的性能改進,所以我不能告訴你這是否有幫助。 – Ankur
您目前使用的代碼可能有幫助嗎? –