Ponieważ wszystkie dane użyte w INSERT
Instrukcja pochodzi z instrukcji 'SELECT', nie ma sensu podejmować dodatkowej podróży w obie strony między aplikacją Java a bazą danych. Wykonywanie wszystkiego za pomocą jednej instrukcji SQL zapewni najlepszą wydajność.
Twoja instrukcja SQL powinna wyglądać tak
INSERT INTO snomedinfo_data (refid,id,effectivetime,active,moduleid,conceptid,languagecode,typeid,term,caseSignificanceid)
SELECT d.refid, d.id, d.effectivetime, d.active, d.moduleid, d.conceptid, d.languagecode, d.typeid, d.term, d.caseSignificanceid
FROM snomed_descriptiondata d
JOIN snomed_conceptdata c ON c.id = d.conceptid AND c.active = 1 AND d.active = 1
Twój kod Java można sprowadzić do tego
try {
oRoot = Root.createDbConnection(null);
String sql = "INSERT INTO snomedinfo_data...";
oPrStmt = oRoot.con.prepareStatement(sql);
oPrStmt.executeUpdate();
}