我想知道是否有办法在以下语句中选择具有用户输入的表:
myStmt = db.myConn.prepareStatement("select * from Rooms where "
+ "idRooms = ?");
myStmt.setInt(1, roomNum);
myRs = myStmt.executeQuery();
是否有可能在select * from =? where idRooms = ?
之类的内容中根据用户输入选择Rooms
准备好的语句?
myStmt.setString(1, Room);
mysStmt.setInt(2, roomID);
由于
答案 0 :(得分:1)
无法将表名添加为参数。 您只需创建一个包含构造查询的字符串,如下所示:
String query = "select * from " + userParamVariable + " where idRooms = ?"
答案 1 :(得分:0)
我猜你是通过拆分管理你的表,但遗憾的是PreparedStatement不支持它,你可以用String.format()方法手动替换表名。