oracle procedure輸入引數為date日期小記
create or replace procedure proc_tuning(in_order_id int,in_order_date date,out_refcursor out sys_refcursor)
is
v_sql varchar2(4000);
is
v_sql varchar2(4000);
begin
v_sql:='select * from t_orderbill where ';
if in_order_id is null and in_order_date is null then
open out_refcursor for 'select * from t_orderbill ';
else
if in_order_id is not null then
v_sql:=v_sql||' order_id= '||chr(39)||in_order_id||chr(39);
end if;
if in_order_date is not null then
v_sql:=v_sql||' and order_date='||'to_date('||''''||in_order_date||''''||','||''''||'yyyy-mm-dd'||''''||')';
end if;
v_sql:=v_sql||'and 1=1';
open out_refcursor for v_sql;
end if;
end proc_tuning;
v_sql:='select * from t_orderbill where ';
if in_order_id is null and in_order_date is null then
open out_refcursor for 'select * from t_orderbill ';
else
if in_order_id is not null then
v_sql:=v_sql||' order_id= '||chr(39)||in_order_id||chr(39);
end if;
if in_order_date is not null then
v_sql:=v_sql||' and order_date='||'to_date('||''''||in_order_date||''''||','||''''||'yyyy-mm-dd'||''''||')';
end if;
v_sql:=v_sql||'and 1=1';
open out_refcursor for v_sql;
end if;
end proc_tuning;
小結:
1,輸入引數還是會傳遞的是字串,而非date,最終還要用to_date轉化
2,故輸入引數用char還是更好,這樣只用一次轉化
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-749700/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle儲存過程procedure輸入引數為空_如果顯示錶列不為 null的記錄Oracle儲存過程Null
- oracle儲存過程procedure_輸入引數varchar2與char報錯Oracle儲存過程
- oracle procedure儲存過程輸入引數用於sql like模糊匹配2演算法Oracle儲存過程SQL演算法
- 用oracle procedure儲存過程實現自表(列存在null)查詢不等於輸入引數的記錄Oracle儲存過程Null
- Swift語言中為外部引數設定預設值可變引數常量引數變數引數輸入輸出引數Swift變數
- oracle procedure 儲存過程輸入及輸出in out示例Oracle儲存過程
- oracle procedure儲存過程輸入引數之動態sql傳入(括號及,逗號的特殊處理Oracle儲存過程SQL
- Oracle帶輸入輸出引數的儲存過程Oracle儲存過程
- JavaScript Date() 引數JavaScript
- oracle父儲存過程呼叫子儲存過程procedure與輸出引數Oracle儲存過程
- SQL Server-儲存過程(Procedure),帶入引數和出引數SQLServer儲存過程
- 前端開發之日期控制元件、HTML5日期輸入型別(date)前端控制元件HTML型別
- Oracle dbms_scheduler建立帶輸入引數的JOBOracle
- Solidity語言學習筆記————24、輸入輸出引數Solid筆記
- docker學習筆記-啟動映象輸入引數Docker筆記
- main命令列引數輸入AI命令列
- 驗證輸入的字串是否為合法日期字串
- 【Hive】日期從整形轉為Date型別Hive型別
- 利用可變長度引數定義一個函式,輸入為任意個數的數值,功能為對輸入資料求和並輸出;函式
- Adroid edittext 輸入小數時只能輸入到小數點後的固定位數
- Oracle:SYS_REFCURSOR作為函式中的輸出引數Oracle函式
- js將時間日期字串轉換為時間日期Date物件JS字串物件
- 有關日期手工輸入驗證、日期彈出框、數值輸入驗證、必須輸入驗證等(共三個檔案)
- oracle儲存過程(procedure)中執行動態SQL小記Oracle儲存過程SQL
- 輸入框只能輸入負數,整數,2位小數(鍵盤彈起事件)事件
- javascript如何將時間日期轉換為Date物件JavaScript物件
- Oracle遊標型別作為傳入傳出引數Oracle型別
- (轉)修改oracle預設日期格式 nls_date_formatOracleORM
- 今天在訂單的SCHEDULE_SHIP_DATE發現只能輸入某個日期之前的
- 短視訊軟體開發,flutter 輸入框限制輸入 數字、小數Flutter
- 大批次引數輸入查詢處理
- 記錄一個Oracle引數Oracle
- java Date日期類和SimpleDateFormat日期類格式JavaORM
- Mybatis傳入引數為List物件MyBatis物件
- c#方法引數_輸出引數C#
- 微信小程式input輸入框設定最大可輸入字元數量微信小程式字元
- Oracle的NLS_DATE_FORMAT設定(日期格式設定)OracleORM
- 驗證使用者輸入的字串是否為日期時間字串