我有存储过程
t2 on (t2.Location, t2.Date) = ('Location2', 'Date2');
运行:
if(data[0].USR==1)
{
this.navCtrl.push(DashboardPage);
}
结果:
dashboard.html
我的问题:我使用1个参数<ion-header>
<ion-navbar hideBackButton="true">
<button ion-button icon-only menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>dashboard..</ion-title>
</ion-navbar>
</ion-header>
执行SP,SP可以获得create or replace PROCEDURE TestApi (
p_Contract IN varchar2,
p_ObjID IN INT DEFAULT 0, ------ This Question
p_Result OUT SYS_REFCURSOR
--p_Message OUT varchar2
) IS
p_Message varchar2(500);
Begin
IF p_ObjID =0 THEN p_Message:= `Null`;
ELSE p_Message:=`Not Null`;
END IF;
Open p_Result For
Select ID as "SupportListID",
p_ObjID as "ObjID"
FROM SupportList
where rownum<=5 ;
End ;
注意:如果我使用除 VARIABLE p_Result REFCURSOR;
EXEC PAR.TESTAPI('PPHP0001',null,:p_Result);
-- If i don't set Parameter with NUll , execute will cause an error
print p_Result;
以外的任何类型数据,我可以获得 SupportListID ObjID
------------- ---------------------------------------
107*******
107*******
107*******
107*******
107*******
。告诉我该怎么做。我使用NULL
DEFAULT VALUE
从SP Oracle获取参数
更新:我说完了,使用了Oracle命令的BybindName,非常感谢大家
答案 0 :(得分:3)
只需使用命名参数并省略p_ObjID
:
VARIABLE p_Result REFCURSOR;
EXEC PAR.TESTAPI(p_Contract => 'PPHP0001', p_Result =>:p_Result);