如何将此功能输入toad运行?

时间:2013-09-12 19:04:40

标签: plsql oracle11g

这是代码

vResult VARCHAR2(200);
BEGIN
  fvData:=TRIM(fvData);
  IF SUBSTR(fvData,LENGTH(fvData)-1,1)<>'*' THEN
    fvData:=fvData||'**';
  END IF;
  vResult:=SUBSTR(fvData,1,InStr(fvData,'^^') - 1);
  fvData:=SUBSTR(fvData,InStr(fvData,'^^') + 3);
  RETURN vResult;
END StringExtract;
/

我尝试使用fvdata=365以不同的方式输入,但没有任何反应,我尝试输入小型SQL

select InStr(367,'^^^^') - 1 
  from dual; 

但我无法弄清楚如何做这个大功能。

1 个答案:

答案 0 :(得分:0)

为了帮助您完成此工作,请查看以下代码。我遗漏了你的功能的细节,所以我们不会让事情复杂化,但你应该能够重新插入它。

DECLARE

    inputValue VARCHAR2(200) := :inputValue; -- << this bind variable allows you to provide different input each you run the code

    FUNCTION stringExtract(fvData varchar2) RETURN varchar2
    IS
       vResult VARCHAR2(200);
    BEGIN

        vResult := TRIM(fvData);

        RETURN vResult;

    END stringExtract;

BEGIN

   DBMS_OUTPUT.PUT_LINE(LENGTH(inputValue));

   DBMS_OUTPUT.PUT_LINE(LENGTH(stringExtract(inputValue)));

END;    

希望您可以将其作为模板并适应您的程序。