Home  >  Article  >  Database  >  Java调用 Oracle 函数

Java调用 Oracle 函数

WBOY
WBOYOriginal
2016-06-07 17:33:41875browse

Java调用 Oracle 函数,一个函数本质上一个返回一个结果的存储过程,这个例子示范了怎么调用有in、out和in/out参数的函数。

Java调用 Oracle 函数,一个函数本质上一个返回一个结果的存储过程,这个例子示范了怎么调用有in、out和in/out参数的函数。

大同小异的方法。

  CallableStatement cs;
  try {
  // 调用一个没有参数的函数; 函数返回 a VARCHAR
  // 预处理callable语句
  
  cs = connection.prepareCall("{? = call myfunc}");
  
  // 注册返回值类型
  cs.registerOutParameter(1, i);
  
  // Execute and retrieve the returned value
  cs.execute();
  String retValue = cs.getString(1);
  
  // 调用有一个in参数的函数; the function returns a VARCHAR
  cs = connection.prepareCall("{? = call myfuncin(?)}");
  
  // Register the type of the return value
  cs.registerOutParameter(1, Types.VARCHAR);
  
  // Set the value for the IN parameter
  cs.setString(2, "a string");
  
  // Execute and retrieve the returned value
  cs.execute();
  retValue = cs.getString(1);
  
  // 调用有一个out参数的函数; the function returns a VARCHAR
  cs = connection.prepareCall("{? = call myfuncout(?)}");
  
  // Register the types of the return value and OUT parameter
  cs.registerOutParameter(1, Types.VARCHAR);
  cs.registerOutParameter(2, Types.VARCHAR);
  
  // Execute and retrieve the returned values
  cs.execute();
  retValue = cs.getString(1);      // return value
  String outParam = cs.getString(2);  // OUT parameter
  
  // 调用有一个in/out参数的函数; the function returns a VARCHAR
  cs = connection.prepareCall("{? = call myfuncinout(?)}");
  
  // Register the types of the return value and OUT parameter
  cs.registerOutParameter(1, Types.VARCHAR);
  cs.registerOutParameter(2, Types.VARCHAR);
  
  // Set the value for the IN/OUT parameter
  cs.setString(2, "a string");
  
  // Execute and retrieve the returned values
  cs.execute();
  retValue = cs.getString(1);      // return value
  outParam = cs.getString(2);      // IN/OUT parameter
  } catch (SQLException e) {
  }

相关阅读:

Oracle函数之Replace() 

Oracle函数大全

Oracle函数之case和decode的用法区别及性能比较

Oracle函数和存储过程简单实例

Oracle函数 通过秒数或分钟数获取时间段

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn