我正在開發一個帶有Play 2.1.0的網絡應用程序並使用Java編程,我需要訪問已保存在數據庫中的數據以修改它們。如何在播放器2和java中在控制器中輸入SQL指令
我試圖創建一個沒有new
操作符的新實例,並將其引用到保存在數據庫中的對象中,但即使沒有指針錯誤,它也不會更改屬性的值。我無法弄清楚爲什麼,所以我決定直接輸入SQL查詢。
同樣的事情,它似乎並不具有任何錯誤,但它不會改變任何東西。我想這是來自一個壞鏈接到數據庫:
這裏是我的代碼在application.java
:
public static Result modifyQuestionnaire(Long id) throws SQLException {
Statement stmt = null;
Connection con = DB.getConnection();
try {
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
String query = "SELECT * FROM WOQ.questionnaire WHERE id=id";
ResultSet uprs = stmt.executeQuery(query);
uprs.updateString("name", "baba");
uprs.updateRow();
} catch(Exception e) {
e.printStackTrace();
} finally {
if (stmt!=null) {
stmt.close();
}
}
return redirect(routes.Application.questionnaire(id));
}
而且我也嘗試直接進入UPDATE
查詢,還是一樣..
我到處找,也沒有找到任何解決方案(除了ANORM但似乎與Scala語言工作)
順便說一句,如果有人知道與第二個實例引用相同的對象的解決方案(這似乎是可能的但正如我所說,沒有錯誤,但沒有動作都沒有),這對我來說很好。
您是否考慮使用交付的'Ebean' ORM?它有用於選擇和更新數據庫行的原始查詢方法 – biesior
您好,我使用ebean創建我的表(例如使用Questionnaire.java),但我不知道使用傳遞的Ebean ORM是什麼意思。你開導我了嗎? – user2524693