为什么我无法在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语句。
答案 0 :(得分:1)
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中解释。