首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java setString()找不到吗?

Java setString()找不到吗?
EN

Stack Overflow用户
提问于 2017-05-20 10:36:26
回答 1查看 109关注 0票数 0

我对编程很陌生,但我正在为后台应用程序制作一个屏幕。此应用程序的目标是,您可以选择车站名称,当您按下check状态时,就会显示该站点上所有储物柜的状态。但我遇到的问题是,setString由于一些奇怪的原因而无法工作。我已经尝试了几乎所有的东西,我也问过很多人,他们是否能找到这个问题--即使是那些用java工作的人,但是他们也找不到。

我在这里唯一能看到的就是?被认不出来了。

我第一次尝试将Amersfoort直接插入到sql代码中,它起了作用。

经过一些测试后,我尝试使用一个没有联接的普通查询,但它没有工作。

在此之后,我试图在我的其余代码中找到一个可能的错误,但是我找不到任何错误。

所以我的问题是我在这里做错了什么?

(小小的免责声明,我试了更多,但我认为这是相当不相干的)

关于输出屏幕的一些说明:

Akkrum是我在测试期间选择的内容,但与此无关,因为目前我没有使用它。

守则:

代码语言:javascript
复制
public void fetch() {

    try {
        databaseConnection();
        String select = stationSelect.getSelectedItem().toString();
        System.out.println(select);

        String sql = "SELECT l.id, s.station_id, locker_number, locker_code, occupied FROM lockers l JOIN stations s ON l.station_id = s.id WHERE name = ?"; 
        System.out.println(1+ ": "+ sql);

        pstmt  = connection.prepareStatement(sql);
        pstmt.setString(1, "Amersfoort");
        System.out.println(2+ ": " + sql);

        resultSet = pstmt.executeQuery(sql);
        System.out.println(3 + ": " + sql);

        Table.setModel(DbUtils.resultSetToTableModel(resultSet));

    } catch (Exception e) {
        System.out.println(e);
        JOptionPane.showMessageDialog(null, e);
    }
}

产出:

阿克克鲁姆

  1. 选择l.id,s.station_id,locker_number,locker_code,从储物柜中选择l.station_id = s.id上的站点,名称=?
  2. 选择l.id,s.station_id,locker_number,locker_code,从储物柜中选择l.station_id = s.id上的站点,名称=?

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的SQL语法出现了错误;请检查与MySQL服务器版本对应的手册,以获得正确的语法以使用near‘?在第1行

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-20 10:41:44

代码语言:javascript
复制
resultSet = pstmt.executeQuery(sql);

错误就在那里。executeQuery(String)接受一个原始的SQL查询并执行它。相反,您希望执行准备好的查询,因此只需调用:

代码语言:javascript
复制
resultSet = pstmt.executeQuery();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44084847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档