mystring := 'abc/dd/<parm1>kkk<parm2>.T<parm3>';
mycursor有parm1 parm2和parm3,param有值。
CURSOR mycursor IS
SELECT parm, value FROM &VIEW;
mystring parm (<parm>)
如何替换mycusor的值
创建新的mystring后,它看起来像下面(parm1 = value1,parm2 = value2,parm3 = value3)
mystring := 'abc/dd/value1kkkvalue2.Tvalue3';
答案 0 :(得分:1)
尝试以下内容:
DECLARE
mystring VARCHAR2(200) := 'abc/dd/<parm1>kkk<parm2>.T<parm3>';
BEGIN
DBMS_OUTPUT.PUT_LINE('Before parameter replacement, mystring=''' ||
mystring || '''');
FOR aRow IN (SELECT parm, value FROM SOME_VIEW) LOOP
mystring := REPLACE(mystring, '<' || aRow.parm || '>', aRow.value);
END LOOP; -- aRow
DBMS_OUTPUT.PUT_LINE('After parameter replacement, mystring=''' ||
mystring || '''');
END;
分享并享受。