0
我想在創建INSERT語句插入所有HashMap
值之前,將我在ArrayList
中的某些數據庫列與我在HashMap
中的某些鍵進行比較。如果在數據庫中找到該列,則該鍵只是INSERT語句的一部分。問題是,第一個鍵被輸入到INSERT語句中兩次導致執行失敗。我沒有在這裏提供INSERT語句,或者Im如何獲取值,因爲這不是問題,而是我如何創建標識列名稱的字符串。嵌套循環在java中添加第一個條目兩次
這是代碼。
ResultSet rs2 = st.executeQuery("SELECT * FROM BRAVODay1And2");
ResultSetMetaData rsmd2 = rs2.getMetaData();
ArrayList<String> che=new ArrayList<String>();
for (int i = 1; i <= rsmd2.getColumnCount(); i++) {
che.add(rsmd2.getColumnName(i).trim());
}
String prep="";
for (Entry<String, String> entry : mapWholeBRAVO.entrySet()) {
String key =entry.getKey().replace(":","");
for (String n:che){
if (n.equals(key)){
prep=prep+key+",";
}
}
}
如果'key'存在幾個在「che」中,你會在'prep'中插入幾次 – Guillaume
Aha。絕對正確。我沒有意識到,我正在從兩個表格中添加相關的一對一,這兩個表格都包含相同的列名稱。現在已經糾正。 ?作爲答案發布? –