db2带参数,并返回查询结果集的存储过程
需求:
创建一个存储过程(db2 7.2 环境下),该存储过程需要一个输入参数 t_sql(来自程序的一条sql语句),然后在存储过程中动态创建一条查询的sql语句,执行该动态sql,返回结果
错误代码如下:
create procedure usp_GetDataAnalysis(in input_sql varchar(2000))
language SQL
begin
declare t_sql varchar(2000)
set t_sql =input_sql;
exec t_sql
set t_sql = 'select AccountName'
select t_sql = t_sql + ',max(case ConditionName when ''' + ConditionName + ''' then [Money] else 0 end)[' + ConditionName +']' from (select distinct ConditionName from TempTable) t
select t_sql = t_sql + ' from TempTable group by AccountName'
exec t_sql
end