我想知道如何使用SQL查询中的给定变量或数组搜索数据库表。我目前正在使用Java和PostgreSQL,我想做类似的事情:
String word = "Apples";
SELECT * FROM table WHERE name = word;
或
token[0] = "Apples";
SELECT * FROM table WHERE name = token[0};
有谁知道这样做的正确方法?
我的最终目标只是检查数据库,看看用户输入的单词是否存储在数据库中,然后是否对该单词执行某些操作。
答案 0 :(得分:3)
使用PrepareStatement,例如
String word = "Apples";
PreparedStatement st = conn.prepareStatement("SELECT * FROM table WHERE name = ?");
st.setString(1, word);
ResultSet rs = st.executeQuery();
答案 1 :(得分:0)
如果要在java端获取数据,请执行以下操作:
Connection con = DriverManager.getConnection
("jdbc:derby://localhost:1527/testDb","name","pass");
PreparedStatement updateemp = con.prepareStatement
("insert into emp values(?,?,?)");
updateemp.setInt(1,23);
updateemp.setString(2,"Roshan");
updateemp.setString(3, "CEO");
updateemp.executeUpdate();
Statement stmt = con.createStatement();
String query = "select * from emp";
ResultSet rs = stmt.executeQuery(query);
查看完整详情: Here