我想將數據插入到我的sqlite數據庫中,但使用一個變量作爲應該輸入數據的表的名稱。如何插入數據到表名作爲變量的sqlite數據庫
try {
Random rand = new Random();
uniqueID = rand.nextInt(9998) + 1; //Generates a random number from 1 - 9999 inclusively
String dateStart = day1.getText() + "/" + month1.getText() + "/" + year1.getText();
String dateEnd = day2.getText() + "/" + month2.getText() + "/" + year2.getText();
String projectN = projectName.getText();
String addr = address.getText();
//String engineerN = engineerName.getText();
//String engineerP = engineerPassword.getText();
Class.forName("org.sqlite.JDBC");
conn2.setAutoCommit(false);
PreparedStatement ps = conn2.prepareStatement("insert into "My table name" (uniqueid,name,address,startingdate,estcompletion) values(?,?,?,?,?,?)");
ps.setInt(1, uniqueID);
ps.setString(2, projectN);
ps.setString(3, addr);
ps.setString(4, dateStart);
ps.setString(5, dateEnd);
//ps.setString(6, engineerN);
ps.execute();
ps.close();
conn2.commit();
conn2.close();
}
catch (Exception e1) {
System.err.println(e1.getClass().getName() + ": " + e1.getMessage());
System.exit(0);
}
}
}
public String JJI() {
return projectName.getText();
}
}
「我的表名」在準備好的聲明就是我想要把我的表名得到它從projectName.getText()的地方;最後。用戶在另一個類中輸入projectname.getText。 謝謝你的幫助!在一個字符串變量
我愛你的男人。謝謝你的答案^ - ^幫助噸。 –
@SkibRs祝你好運! – moffeltje
您的第三點(將值連接到查詢中)是非常糟糕的形式,它鼓勵SQL注入。原來的解決方案在這方面已經是正確的解決方案。 –