PreparedStatement的方法未定义错误

时间:2012-06-25 07:10:36

标签: jsp

我是java服务器页面的新手,并编写了一个涉及jdbc连接的jsp文件的代码,它给我一个错误“方法resultString(int,String)未定义类型PreparedStatement”。这是我的源代码

<%@ page import = "java.sql.*"%>
<html>
<head>
<title>Player Details</title>
</head>
<body>
<center>
Welcome to Players Details Page
<br><br>
Player Details are
<br><br>
<table border=7>
<tr>
<td>Player No</td>
<td>Player Name</td>
<td>Country</td>
<td>Club</td>
</tr>
<%
 String Player_No = request.getParameter("Player_No");
 try
 {
Class.forName("oracle.jdbc.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:SYSTEM/rambabu@localhost:8081:XE");
PreparedStatement ps = con.prepareStatement("Select * from Player where Player_No=?");
ps.resultString(1,Player_No);
ResultSet rs = ps.executeQuery();
if(rs.next())
{   
%>
<tr>
<td><%=rs.getString(1) %></td>
<td><%=rs.getString(2) %></td>
<td><%=rs.getString(3) %></td>
<td><%=rs.getString(4) %></td>
</tr> 
<%
    }
    rs.close();
ps.close();
con.close();
}
catch(Exception e)
{
System.out.println(e);
}
%>

</table>
</center>
</body>
</html>

`

1 个答案:

答案 0 :(得分:0)

没有名为 ps.resultString 的方法 public void setString(int parameterIndex, String x) throws SQLException

使用

 ps.setString(1,Player_No);

为SQL语句创建(准备好)PreparedStatement后,您可以在问号的位置插入参数。这是使用许多setXXX()方法完成的。

xxx可以是String,Int,...

上述语句将Player_No设置为SQL Query中的第一个问号。因此SQL查询将如下所示:(假设request.getParameter(“Player_No”)返回5例如)

"Select * from Player where Player_No=5"