Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.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 PostgreSQL&;JDBC:INSERT INTO返回空结果集_Java_Sql_Postgresql_Jdbc_Insert Into - Fatal编程技术网

Java PostgreSQL&;JDBC:INSERT INTO返回空结果集

Java PostgreSQL&;JDBC:INSERT INTO返回空结果集,java,sql,postgresql,jdbc,insert-into,Java,Sql,Postgresql,Jdbc,Insert Into,我有一个带有返回值的insert语句。问题是,只有插入到零件中的部分起作用,但不返回任何内容。我也尝试过使用表属性和常量值。我正在使用org.postgresql:postgresql:9.3-1101-jdbc41驱动程序 是否有任何解决方案使此查询正常工作 private Blitz blitzToDB(Blitz curr) { try { SolarPosition position = new SolarPosition(System.currentTi

我有一个带有返回值的insert语句。问题是,只有插入到零件中的部分起作用,但不返回任何内容。我也尝试过使用表属性和常量值。我正在使用org.postgresql:postgresql:9.3-1101-jdbc41驱动程序

是否有任何解决方案使此查询正常工作

private Blitz blitzToDB(Blitz curr)
{
    try
    {
        SolarPosition position = new SolarPosition(System.currentTimeMillis(),curr.BlitzLat,curr.BlitzLon);
        PreparedStatement blitz_insertion = mPostgresConn.prepareCall("INSERT INTO blitzv2_blitzes (blitz_lat, blitz_lon, blitz_mapx, blitz_mapy, blitz_map, blitz_country, blitz_region, blitz_subregion, blitz_settlem, blitz_settlemtype, blitz_concattype, blitz_sunelev, blitz_str) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?) RETURNING '0'");
        blitz_insertion.setDouble(1, curr.BlitzLat);
        blitz_insertion.setDouble(2, curr.BlitzLon);
        blitz_insertion.setDouble(3,0);
        blitz_insertion.setDouble(4, 0);
        blitz_insertion.setString(5, "LIVE");
        blitz_insertion.setString(6,curr.BlitzCountry);
        blitz_insertion.setString(7,curr.BlitzRegion);
        blitz_insertion.setString(8,curr.BlitzSubregion);
        blitz_insertion.setString(9,curr.BlitzSettlem);
        blitz_insertion.setString(10,curr.BlitzSettlemType);
        blitz_insertion.setString(11,"NONE");
        blitz_insertion.setDouble(12,curr.SunElevation);
        blitz_insertion.setString(13,curr.BlitzStreet);
        ResultSet rs = blitz_insertion.executeQuery();
        if(rs.next())
        {
            System.out.println(rs.getInt(1));
           // curr.BlitzID = rs.getLong(1);
        }
        else
        {
            System.out.println(":(");
        }
        return curr;
    }
    catch (Exception ex)
    {
        ex.printStackTrace();
        ErrorLog.pushError(ErrorLog.ErrorKinds.BlitzSqlError,ex);
        curr.BlitzID = 0L;
        return curr;
    }

}

如果从
psql
运行相同的语句,会发生什么?目标表是插入do时带有
触发器或规则的视图还是分区表?是的,表已分区(按blitz_时间-每月分区)。没有返回任何内容。修改触发器函数有帮助。谢谢!请发布一个答案,自我解释问题,然后你做了什么。谢谢。仍然没有解决返回问题,目前我在插入查询之后使用currval(串行)查询。