java中的sql:WHERE name = variable

Alo*_*iel -2 java sql

这是我的代码:

public static List GetList(String myname) {
    .
    .
    ResultSet result = stmt.executeQuery("SELECT * FROM authors WHERE name = ?");
    result.setString(myname);
}
Run Code Online (Sandbox Code Playgroud)

我想选择name = myname(myname是函数的输入).

我也尝试过类似的东西:

WHERE name = @myname
Run Code Online (Sandbox Code Playgroud)

但它不起作用:/

a_h*_*ame 6

您不在结果上设置值,而是在语句上设置:

PreparedStatement pstmt = connection.prepareStatement("SELECT * FROM authors WHERE name = ?");
pstmt.setString(1, myname);
ResultSet result = pstmt.executeQuery();
Run Code Online (Sandbox Code Playgroud)