日期:2014-05-17  浏览次数:20775 次

问一个问题,我现在想写一个存储过程的cursor,但是我想动态的传进去一些值,怎么写那?
比如说下面这个cursor的定义,我用了带参数的cursor,但是不行,like '%C_DATASET_NAME%'这样只是把C_DATASET_NAME当成一个字符串,而不是变量,有什么办法可以解决这个问题?
CURSOR clauseid_cursor(C_DATASET_NAME IN VARCHAR2) IS select clausetemplateid from clausetemplates where srcparams like '%C_DATASET_NAME%' and (clausetemplateid,versionnumber) in (select clausetemplateid,max(versionnumber) from clausetemplates group by clausetemplateid);

------解决方案--------------------
'%'||C_DATASET_NAME||'%'