程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Java調用Oracle函數的兩種情況

Java調用Oracle函數的兩種情況

編輯:Oracle數據庫基礎

下面為您介紹的Java調用Oracle函數方法,共兩種情況,一種調用無入參的Oracle函數,一種則是調用有一個入參,一個輸出參數以及一個字符串返回值的Oracle函數。

調用無入參的函數

函數定義

  1. CREATE OR REPLACE Function f_getstring Return Varchar2 Is  
  2. Begin  
  3. Return ''String value'';  
  4. End f_getstring; 

調用函數的Java片斷

  1. CallableStatement cstmt = con.prepareCall("{?=call f_getstring}");  
  2. cstmt.registerOutParameter(1, Types.VARCHAR);  
  3. cstmt.execute();  
  4. String strValue = cstmt.getString(1);  
  5. System.out.println("The return value is:" + strValue);  
  6. cstmt.close(); 

調用有一個入參,一個輸出參數以及一個字符串返回值的函數

函數定義

  1. CREATE OR REPLACE Function f_Getinfo(Id Integer, Age Out Integer) Return Varchar2 Is  
  2. Begin  
  3. Age :10;  
  4. Return ''The age is:'' || Id;  
  5. End f_Getinfo; 

調用函數的Java代碼片斷

  1. CallableStatement cstmt = con 
  2.   .prepareCall("{?=call f_getinfo(?,?)}");  
  3. cstmt.registerOutParameter(1, Types.VARCHAR);  
  4. cstmt.setInt(2, 11);  
  5. cstmt.registerOutParameter(3, Types.INTEGER);  
  6. cstmt.execute();  
  7. String strValue = cstmt.getString(1);  
  8. int age = cstmt.getInt(3);  
  9. System.out.println("The return value is:" + strValue  
  10.   + " and age is:" + age);  
  11. cstmt.close(); 



  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved