Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java eclipse中的预处理语句执行_Java_Mysql_Eclipse_Jdbc - Fatal编程技术网

Java eclipse中的预处理语句执行

Java eclipse中的预处理语句执行,java,mysql,eclipse,jdbc,Java,Mysql,Eclipse,Jdbc,} 使用上述代码,我无法在运行配置中传递args值。我收到一个数字格式异常。如何解决此问题。如何在运行配置的“参数”选项卡中传递args。仔细查看您的代码: String query=“从学生信息中选择*,其中regno=?” +“firstname=?”; 完全等同于 String query=“从学生信息中选择*,其中regno=?firstname=?”; 让我们假设当您替换查询参数regno=1和args[1]=“Gord”时。重新查询SQL查询将如下所示: 从学生信息中选择*,其中

}
使用上述代码,我无法在运行配置中传递args值。我收到一个数字格式异常。如何解决此问题。如何在运行配置的“参数”选项卡中传递args。

仔细查看您的代码:

String query=“从学生信息中选择*,其中regno=?”
+“firstname=?”;
完全等同于

String query=“从学生信息中选择*,其中regno=?firstname=?”;
让我们假设当您替换查询参数
regno=1
args[1]=“Gord”
时。重新查询SQL查询将如下所示:

从学生信息中选择*,其中regno=1firstname='Gord'
这是无效的语法。WHERE子句中的两个条件需要使用布尔运算符组合:
。因此,原始查询字符串需要为

String query=“从学生信息中选择*,其中regno=?”
+“名字=?”;

String query=“从学生信息中选择*,其中regno=?”
+“或名字=?”;

我正在从run configuration@peeskillett传递参数。代码看起来不错。哪一行给了您异常?您到底在键入什么?在运行配置选项卡中键入5,名称1异常如下线程“main”java.lang.NumberFormatException中的异常:对于输入字符串,java.lang.NumberFormatException.forInputString(未知源)在java.lang.Integer.parseInt(未知源)中的异常:“5,suhas”在com.first.Preparedstatement.main(Preparedstatement.java:38)的java.lang.Integer.parseInt(未知源代码)@peeskilletcommand行参数由空格而不是逗号分隔。
public static void main(String[] args)
{
    Connection con=null;
    PreparedStatement pstmt=null;
    ResultSet rs=null;
    /*
     * 1.load the driver
     * driver class :com.mysql.jdbc.Driver

     */

    try {
        Driver driverref=new Driver();
        DriverManager.registerDriver(driverref);
        /*
         * 2.get db connection via driver
         */
        String DbUrl="jdbc:mysql://localhost:3306/college?user=suhas&password=j2ee";
        con=DriverManager.getConnection(DbUrl);
        /*
         * 3.issue SQL queries via Connection
         */
        String query="select * from Students_info where regno=?"
         +"firstname=?";
        pstmt=con.prepareStatement(query);
        String regnum=args[0];
        int regno=Integer.parseInt(regnum);
        pstmt.setInt(1,regno);
        pstmt.setString(2, args[1]);
        rs=pstmt.executeQuery();
        /*
         * 4.process the results returned by sql query
         */
        while(rs.next()){
            int dbregno=rs.getInt("regno");
            String fname=rs.getString("firstname");
            String mname=rs.getString("middlename");
            String lname=rs.getString("lastname");
            System.out.println("regno "+dbregno);
            System.out.println("first name "+fname );
            System.out.println("middlename "+mname);
            System.out.println("lastname "+lname);
            }//end of while
    }
    catch (SQLException e) 
    {
        e.printStackTrace();
    }
    finally{
        /*
         * close all jdbc objects
         */
        try {
            if(con!=null){
                con.close();

            }
            if(pstmt!=null){
                pstmt.close();
            }
            if(rs!=null){
                rs.close();
            }
        } catch (SQLException e) {

            e.printStackTrace();
        }
    }
}