如何在java中调用PostgreSQL函数?

如何在java中调用PostgreSQL函数?,java,postgresql,postgis,Java,Postgresql,Postgis,我有PostgreSQL+PostGIS 我想调用此查询: SELECT num,id,mydata, asText(the_geom) FROM filedata 但是获取NullPointerException 我想这是因为我试图在这个查询中调用函数asText,但却做错了。我该怎么办 更新 这是我的代码: IndexedContainer container = createContainer("SELECT num,id,mydata, asText(the_geom) FROM fi

我有PostgreSQL+PostGIS

我想调用此查询:

SELECT num,id,mydata, asText(the_geom) FROM filedata
但是获取
NullPointerException

我想这是因为我试图在这个查询中调用函数
asText
,但却做错了。我该怎么办

更新

这是我的代码:

IndexedContainer container = createContainer("SELECT num,id,mydata, asText(the_geom) FROM filedata");

public IndexedContainer createContainer(String SQL) throws SQLException, ClassNotFoundException
{
    Class.forName("org.postgresql.Driver");
        Connection con= null;
      con =  DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgis","postgres","123456");


    IndexedContainer container = new IndexedContainer();
    String sSQL = SQL;

    PreparedStatement ps = con.prepareStatement(sSQL);
 ////*****////
}

您的问题很可能出现在_geom中-它不是表列(除非您没有遵循任何命名标准)。如果您试图用Java构建SQL并将值从Java变量传递给SQL,则可以使用查询参数。

我怀疑您“忘记”了SQL实际上是在SQL server上运行的,而Java变量不可用。

A
NullPointerException
从来都不是含糊不清的。检查stacktrace(然后根据需要逐步检查代码)以查看空值。然后找出原因。显示更多代码。如何执行sql查询?需要显示相关的java代码。java框架可能希望看到派生字段的名称<代码>选择num、id、mydata、astext(几何体)作为文件数据中的文本几何体