当我试图连接到数据库时,我一直收到这个错误。
这是我准备好的陈述
String SQL = "SELECT * FROM `?` WHERE `HomeTeam` = '?'";
        PreparedStatement prepst;            
        prepst =  con.prepareStatement(SQL);
        prepst.setString(1,box1.getSelectedItem().toString());
        prepst.setString(2,box1.getSelectedItem().toString());
        rs = prepst.executeQuery();有人知道我为什么会犯这个错误吗?
发布于 2014-02-18 12:51:11
我认为您的问题在于'和`符号。您应该将sql修改为如下:
String SQL = "SELECT * FROM ? WHERE HomeTeam = ?";
但是,我不确定参数占位符?是否支持在from之后。因此,很可能你必须自己写,例如:
String table = box1.getSelectedItem().toString();
String SQL = "SELECT * FROM " + table + " WHERE HomeTeam = ?";发布于 2014-02-18 12:48:34
使用
String SQL = "SELECT * FROM ? WHERE HomeTeam = ?";不要使用“嵌套参数”,如果要对参数进行硬编码,则要使用“嵌套”来嵌套正在比较的值。
你不能用?若要指定表名,请执行以下操作。
https://stackoverflow.com/questions/21854344
复制相似问题