如何在postgres中调用函数

时间:2015-04-23 11:28:32

标签: postgresql jasper-reports

我在Jaspersoft中有一个函数,我将它称为postgres 功能如下:

SELECT * FROM getethnicityanalysisreportdata($P{site_name}) where  $X{IN, sitename}

现在我正在使用:

select getethnicityanalysisreportdata("site_name");

在postgres中进行测试。 但它不起作用。 任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

您应该通过以下方式调用函数:

select "getethnicityanalysisreportdata"('site_name');

将您的函数名称放在双引号中。它肯定会奏效。

答案 1 :(得分:0)

SQL文字是单引号。 SQL标识符是双引号。

没有名为site_name的列或表,因此错误实际上是:

regress=>  select getethnicityanalysisreportdata("site_name");
ERROR:  column "site_name" does not exist
LINE 1: select getethnicityanalysisreportdata("site_name");

如果你想要一个文字字符串,你应该使用单引号:

select getethnicityanalysisreportdata('site_name');

请参阅the manual