如何把一个含有like的sql语句当作参数传给oracle的存储过程,让传进去的sql语句能够在存储过程里执行
发布网友
发布时间:2022-04-10 05:15
我来回答
共2个回答
热心网友
时间:2022-04-10 06:44
你这个情况, 需要使用 Oracle 的 动态 SQL 的处理机制来处理的。
可以看看 参考资料 中的例子。
参考资料:http://hi.baidu.com/wangqing999/blog/item/49752e0d0ed5562b6a60fb51.html
热心网友
时间:2022-04-10 08:02
CREATE OR REPLACE PROCEDURE SPW_CTR_HOUR_SUM IS
NAME_VALUE cell %TYPE;
CURSOR CUR IS select a.name from cell a,TER_MEA_CTR_DATA_AGG b,Ter_mea_ctr_data_CELLTRANS c
where a.CGI=(select c.CGI from TER_MEA_CTR_DATA_AGG b,Ter_mea_ctr_data_CELLTRANS c where b.TargetCellId=c.cptr)
BEGIN
OPEN CUR;
LOOP:
FETCH CUR INTO NAME_VALUE;
EXIT WHEN CUR%NOTFOUND;
update TER_MEA_CTR_DATA_AGG set
ServingCellId=NAME_VALUE,TargetCellId=NAME_VALUE, HoCell1Id=NAME_VALUE;
END LOOP;
COMMIT;
END SPW_CTR_HOUR_SUM;