初学JDBC报错Parameter index out of range (1 > number of parameters, which is 0).
package com.section1;
import java.nio.channels.SelectableChannel;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import com.mysql.fabric.xmlrpc.base.Member;
import com.mysql.jdbc.Statement;
public class JDBCTester6 {
public static void main(String[] args) throws Exception {
String sql="select * from member where MobilePhone=? and pwd =?";
select("sql","10010","100");
}
private static void select(String sql, String... parameters) throws ClassNotFoundException,SQLException {
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://120.1.1.5:3306/test";
String user="user";
String password ="123456";
Connection conn=DriverManager.getConnection(url, user, password);
PreparedStatement pstmt=conn.prepareStatement(sql);
for(int i =0;i< parameters.length;i++){
pstmt.setString(i+1, parameters[i]);
}
ResultSet resultSet=pstmt.executeQuery();
ResultSetMetaData metadata=resultSet.getMetaData();
int columnCount =metadata.getColumnCount();
while (resultSet.next()){
for(int i=1;i<columnCount;i++){
String value=resultSet.getString(i);
System.out.print(value+" ");
}
}
pstmt.close();
conn.close();
}
}
小白,实在找不到原因