0
我想從一個MYSQL數據庫表中選擇一些數據,並使用JAVA將這些選定數據插入到同一個數據庫中的另一個表中。兩個表都有相同的結構。到目前爲止,我可以選擇數據,但我無法插入這些數據。使用JAVA複製一個表數據並將其插入到同一數據庫中的另一個表中?
測試和test_t是表格。
item_id是表中唯一的一列。
我也想刪除測試表數據後我把它們插入test_t表。這個測試表就像一個臨時表。
這是我的方法。
private void testM() throws Exception {
pooler = DBPool_SF.getInstance();
dataSource = pooler.getDataSource();
Connection con = dataSource.getConnection();
con.setAutoCommit(false);
PreparedStatement ps,ps1 = null;
ResultSet rs = null;
String SEL_QUERY = "select item_id from test";
String UPDATE_QUERY = "insert into test_t values(?)";
ps = con.prepareStatement(SEL_QUERY);
rs = ps.executeQuery();
ps1 = con.prepareStatement(UPDATE_QUERY);
while (rs.next()) {
String id = rs.getString("item_id");
System.out.println(id);
ps1.setString(1,id);
ps1.addBatch();
}
ps1.executeBatch();
con.close();
}
您是否收到任何錯誤或任何其他錯誤提示?除此之外,你爲什麼不使用['INSERT ... SELECT'](https://dev.mysql.com/doc/refman/5.7/en/insert-select.html)在數據庫上做這件事? – Thomas
你遇到什麼錯誤?關閉連接之前使用提交 – user5478656
。 con.close(); con.commit(); – Prasath