Error: SQLException: Parameter index out of range (1 > number of parameters, which is 0)

Error: SQLException: Parameter index out of range (1 > number of parameters, which is 0)

尽管上述准备语句的语法是正确的,但我收到以下错误:

java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0)

预期的结果是下面的代码必须return取值为table

try{
        conn = DatabaseMain.getConnection();
        String instqury = "Select quality_name,quality_size,quality_weight,quality_spec from quality where quality_code = '?'";
        pst1 = conn.prepareStatement(instqury);
        pst1.setString(1, quality);

        rs1 = pst1.executeQuery();
        rs1.next();
        name.setText(String.valueOf(rs1.getString("quality_name")));

    }
    catch(Exception e){
        e.printStackTrace();
        System.out.println("Error in setting labels for Machine View");
    }

不要将占位符放在单引号之间:

String instqury = 
    "Select quality_name,quality_size,quality_weight,quality_spec " + 
    "from quality where quality_code = ?";
                                       ^-- here

尝试从占位符 ? 中删除单引号,当你这样放置 '?' 时查询正在读取它作为提供的值。