正在嘗試向數據庫中插入值,但如果有人能夠發現它,似乎存在代碼問題。我使用一個Servlet,以獲取用戶輸入,然後使用一種方法發送的輸入到下面的類:我的插入語句不起作用
@Override
public String createItem(String title, String info, String url, String imageFilename) {
String addItem = title;
Connection conn = null;
try
{
Class.forName("org.sqlite.JDBC");
conn = DriverManager.getConnection("jdbc:sqlite:" + DBPath);
if (conn == null)
{
System.err.println("Database connection was null:(");
return addItem;
}
Statement stmt = conn.createStatement();
String query = "INSERT INTO items (title, info, URL, image) VALUES (newtitle, newInfo, newUrl, newImage)";
//String query = "INSERT INTO items (title, info, URL, image) VALUES(" + title + "," + info + "," + url +","+ imageFilename +")";
stmt.executeUpdate(query);
stmt.close();
}
catch(Exception e)
{
System.err.println("Exception querying database" + e.toString());
}
finally
{
try
{
conn.close();
}
catch(Exception e)
{
System.err.println("Exception querying database" + e.toString());
}
}
return addItem;
}
我試圖鍵入這些值,而無需使用在該方法中傳遞的值來自servlet。 我檢查了我的插入語句在Sqlite管理器和它的工作,我也檢查,如果值發送到上面的類,它工作,我已經嘗試了連接,所以它使我從它檢索數據,但不插入到它。所以我不知道爲什麼它不存儲數據庫中的值。
什麼確切的症狀導致你得出結論「看起來代碼存在問題」? –
1-我已經在其他方法中嘗試了「到數據庫」的連接,並且它沒有問題,因爲我使用了SELECT語句,並且可以從中檢索數據。 2-I檢查我在方法中傳遞的變量是否正常工作,因爲您可以看到我將值返回給servlet,並顯示「String addItem = title;」。 – user114161
但你仍然沒有描述任何症狀。 「不起作用」不是一個症狀,這是一種抱怨。 –