我在要执行选择语句的SAP HANA本地数据库上获得了查询视图。
选择语句由第三方BI工具发送,该工具使用SAP HANA-JDBC驱动程序(ngdbc.jar)来执行对HANA数据库的访问。
查询需要两个输入参数:PARAMETER_A和PARAMETER_B
在本地HANA数据库上,语法如下所示(SAP HANA工作室):
select *
from "_SYS_BIC"."QUERY_VIEW" ('PLACEHOLDER' = ('$$PARAMETER_A$$', 'value_1'), 'PLACEHOLDER' = ('$$PARAMETER_B$$', 'value_2'))
当我尝试通过jdbc执行此查询时,出现了synatx错误,即不允许使用'='符号。
在使用jdbc的情况下,有人可以告诉我正确的语法吗?
预先感谢
答案 0 :(得分:0)
正如Lars所说,HANA与第三方工具使用相同的JDBC驱动程序,只是版本可能不同。要检查JDBC调用的外观,可以在HANA studio中打开跟踪日志,请参见here
在您的日志中,您会看到类似以下内容的
:com.sap.db.jdbc.HanaConnectionFinalize@37c52b05[ID:316971].prepareCall("SELECT top 10 ""VAR_SUM""
FROM ""_SYS_BIC"".""CV_TEST""('PLACEHOLDER' = ('$$IP_VAP_1$$', '5'), 'PLACEHOLDER' = ('$$IP_VAR_2$$', '3'))", 1003, 1007)
因此,您应该为BI工具设置跟踪,并检查其执行SELECT语句与HANA Studio的方式之间的区别。 希望对您有所帮助))