亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

oracle 自定義函數問題?

oracle 自定義函數問題?

有只小跳蛙 2019-02-06 21:07:51
create or replace function f_change_zhiwu(p_string IN VARCHAR2,p_delimiter IN VARCHAR2)return varchar2 isResult varchar2 as n_length NUMBER := 0; v_tmpstr VARCHAR2(1000);n_tmpnum NUMBER := 0;beginn_length := LENGTH(p_string);for i in 0 .. n_length loopv_tmpstr := substr(p_string, i, i + 1);if v_tmpstr = p_delimiter thenResult := Result || substr(p_string, n_tmpnum, i) || '-';n_tmpnum := n_tmpnum + i + 1;end if;end loop;return(Result);end f_change_zhiwu;在第五行報如下錯誤,如何解決:PLS-00103: 出現符號 "AS"在需要下列之一時::= . ( @ % ; not null rangedefault character
查看完整描述

2 回答

?
手掌心

TA貢獻1942條經驗 獲得超3個贊

return varchar2 is
Result varchar2
as
改成
return result varchar2 is result varchar2(100);n_length NUMBER := 0;

return  varchar2  is result varchar2(100);n_length NUMBER := 0; 多寫了一個result


查看完整回答
反對 回復 2019-03-15
?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

1. Result varchar2 后加分號
2. 去掉as

如下:

create or replace function f_change_zhiwu(p_strinIN VARCHAR2,
p_delimiter IN VARCHAR2)
return varchar2 is
Result varchar2;

n_length NUMBER := 0;
v_tmpstr VARCHAR2(1000);
n_tmpnum NUMBER := 0;
begin
n_length := LENGTH(p_string);
for i in 0 .. n_length loop
v_tmpstr := substr(p_string, i, i + 1);
if v_tmpstr = p_delimiter then
Result := Result || substr(p_string, n_tmpnum, i) || '-';
n_tmpnum := n_tmpnum + i + 1;
end if;
end loop;
return(Result);
end f_change_zhiwu;


查看完整回答
反對 回復 2019-03-15
  • 2 回答
  • 0 關注
  • 1193 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號