为什么我无法在SQL控制台的SAP HANA中执行此查询
PREPARE stmt1
FROM select * from (select '12' as a from dummy) t1
where t1.a = ?;
错误:
无法执行'PREPARE stmt1 FROM select * from(选择'12'作为假人)t1,其中t1.a =?'在3毫秒339微秒。 SAP DBTech JDBC:[257]:sql语法错误:“PREPARE”附近的语法不正确:第1行第1列(位于第1位)
我需要在存储过程中使用prepare语句。
PREPARE
根本不是有效的SQLScript语法。不确定为什么你认为你必须在存储过程中使用它。在SAP HANA存储过程中,您只需编写包含任何变量的SQL语句。例如。
select * from (select '12' as a from dummy) t1
where t1.a = :variable_name;
在技术上是有效的 - 即使结果仅分配给默认结果集。通常,您会将结果分配给表变量,如下所示:
x = select * from (select '12' as a from dummy) t1
where t1.a = :variable_name;
所有这一切当然都在SAP HANA documentation for SQLScript中解释过。