Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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页面中带有“>=”和“=?纬度=?经度_Java_Mysql_Sql - Fatal编程技术网

java页面中带有“>=”和“=?纬度=?经度

java页面中带有“>=”和“=?纬度=?经度,java,mysql,sql,Java,Mysql,Sql,我在wamp服务器的MySQL控制台中尝试了相同的查询,在函数中使用了另一个查询返回的相同值并返回结果,但在java中返回null,为什么? 我正在使用eclipse和tomcat版本6,下面是我的代码:- public String startpgm(String x){ String np = null; String North = null; String Wb_SWLat = null; Str

我在wamp服务器的MySQL控制台中尝试了相同的查询,在函数中使用了另一个查询返回的相同值并返回结果,但在java中返回null,为什么? 我正在使用eclipse和tomcat版本6,下面是我的代码:-

    public String startpgm(String x){

        String np       = null;
        String North    = null;
        String Wb_SWLat = null;
        String Wb_SWLon = null;
        String Wb_NELat = null;
        String Wb_NELon = null;

        String qryWb = "select SW_lat, SW_lon, NE_lat, NE_lon from tbl_zones where zone='west'";

//      String qrywest = "select priority from tbl_vcl";

        String qrywest = "select priority from tbl_vcl where latitude >=? and latitude <=? and longitude >=? and longitude<=?";

        try {
            Statement stmt = (Statement) conn.createStatement();

        ResultSet Wb=stmt.executeQuery(qryWb);//storing the result into result set
        while(Wb.next()){ // looping through the resultset

            Wb_SWLat=Wb.getString("SW_lat");
            Wb_NELat=Wb.getString("NE_lat");
            Wb_SWLon=Wb.getString("SW_lon");            
            Wb_NELon=Wb.getString("NE_lon");

            System.out.println("DBSWlat:"+Wb_SWLat);
            System.out.println("DBNElat:"+Wb_NELat);
            System.out.println("DBSWLon:"+Wb_SWLon);
            System.out.println("DBNELon:"+Wb_NELon);
        }



        PreparedStatement ps = conn.prepareStatement(qrywest);// creating statement on the db connection for executing query

        ps.setString(1, Wb_SWLat);
        ps.setString(2, Wb_SWLon);
        ps.setString(3, Wb_NELat);
        ps.setString(4, Wb_NELon);

        ResultSet rsWest= ps.executeQuery();//storing the result into result set
//      System.out.println("test");
//      System.out.println("DBrset:"+rsWest);       

        while(rsWest.next()){ // looping through the resultset

            np=rsWest.getString("priority");
            System.out.println("np:"+np);
        }




        } catch (SQLException e) {
            // TODO Auto-generated catch block
//          e.printStackTrace();
        }
        North=np;
        System.out.println("DB:"+North);


                    return North ;
        }

当我删除诸如where latitude>=?纬度=?经度准备语句中参数的顺序与设置字符串调用lat/lat/long/long vs lat/long/lat/long中使用的顺序不同。

准备语句中参数的顺序与设置字符串调用lat/lat/long/long vs lat/long/lat/long中使用的顺序不同。

是否尝试过调试?实际分配的值是什么?@shmosel从tbl_vcl中选择优先级,其中纬度>=9.994042,纬度=76.356653和longitude@shmosel我尽我所能。。。MySQL控制台返回的结果是2,列名优先级为。虽然java页面中返回null,但您只需要对参数重新排序,1-Wb_SWLat、2-Wb_NELat、3-Wb_SWLon、4-Wb_NELon。此外,将其作为字符串处理,而不是双精度/长精度或某些数字类型,这有点奇怪。是否尝试过调试?实际分配的值是什么?@shmosel从tbl_vcl中选择优先级,其中纬度>=9.994042,纬度=76.356653和longitude@shmosel我尽我所能。。。MySQL控制台返回的结果是2,列名优先级为。虽然java页面中返回null,但您只需要对参数重新排序,1-Wb_SWLat、2-Wb_NELat、3-Wb_SWLon、4-Wb_NELon。此外,将其作为字符串处理有点奇怪,而不是双精度/长精度或某些数字类型。非常感谢:非常感谢: