java如何调用oracle函数?

 我来答
wencheng888888
2012-12-11 · TA获得超过350个赞
知道答主
回答量:82
采纳率:0%
帮助的人:42.2万
展开全部
调用数据库里的一个函数

一个函数本质上一个返回一个结果的存储过程,这个例子示范了怎么调用有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) {

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Zoujy1022
2012-12-11 · TA获得超过1121个赞
知道小有建树答主
回答量:803
采纳率:0%
帮助的人:622万
展开全部
用jdbc
网上资料很多的。搜一下jdbc oracle 就能看到好多例子了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式