- 论坛徽章:
- 0
|
DECLARE
V_SRC NVARCHAR2(200);
FINX NUMBER;
FLEN NUMBER;
MINX NUMBER;
OAN NVARCHAR2(32);
ECD NVARCHAR2(12);
DLH NVARCHAR2(32);
BEGIN
V_SRC:='这是用户名啊ABCDEFG|HHHHH|123456';
FINX:=instr(V_SRC,'|');
MINX:=INSTR(V_SRC,'|',FINX+1);
EINX:=INSTR(V_SRC,'|',MINX+1);
DBMS_OUTPUT.PUT_LINE(SLEN||','||FINX||','||MINX||','||EINX);
OAN:=SUBSTR(V_SRC,0,FINX-1);
DBMS_OUTPUT.PUT_LINE(OAN);
ECD:=SUBSTR(V_SRC,FINX+1,MINX-1);
DBMS_OUTPUT.PUT_LINE(ECD);
DLH:=SUBSTR(V_SRC,EINX+1,EINX-1);
DBMS_OUTPUT.PUT_LINE(DLH);
END;
运行提示
ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小
ORA-06512: 在 line 29
06502. 00000 - "PL/SQL: numeric or value error%s"
*Cause:
*Action:
哪里错了?还望各位大师指点一下!谢谢 |
|