版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第页2023Java中调用Oracle包的过程Java中调用Oracle包的过程
在Java中调用Oracle包是我们程序员常常遇到的'事情,那么它详细的过程是怎么样的呢?我们一起来看看!
一、先在oracle中编写测试过程
1、首选建一个测试表
--Createtable
createtableBOOK
(
BOOKIDVARCHAR2(50)notnull,
BOOKNAMEVARCHAR2(50)notnull,
PUBLISHERVARCHAR2(50)notnull,
PRICEVARCHAR2(50)null
)
2、编写ORACLE测试过程
CREATEORREPLACEPACKAGEpkg_test
ASFROMBOOK;
ELSE
sqlstr:=
''''select*
fromBOOKwhereBOOKID=:w_id'''';
OPENp_rcFORsqlstrUSINGp_id;
ENDIF;
ENDget;
ENDpkg_test;
/
在这里我们建立了一个输入参数,为一般类型,两个输出参数,其中一个为一般VARCHAR2型,另一个为特别的记录集类型。
(注:在数据库端测试一下这个过程,以确保没有问题,起先下面的操作~:)
二、编写JAVA代码测试过程
/*
*创立日期:2003-8-8
*/
packageJDBC;
/**
*作者:may
*时间:15:09:23
*/
importjava.sql.*;
importoracle.jdbc.driver.*;
publicclassproctest{
publicstaticvoidmain(String[]args){
proctestpc=newproctest();
pc.ShowContent();
}
StringsDBDriver="oracle.jdbc.driver.OracleDriver";
StringsConnStr="jdbc:oracle:thin:@10.3.8.48:1521:ORADB";
Connectionconnect=null;
ResultSetrs=null;
publicproctest(){
try{
Class.forName(sDBDriver);
}
catch(ClassNotFoundExceptione){
System.err.println(e.getMessage());
}
}
publicResultSetShowContent()
{
try{
connect=DriverManager.getConnection(sConnStr,"SHUIBJ","SHUIBJ");
CallableStatementstmt=connect.prepareCall("{callPKG_TEST.GET(?,?,?)}");
stmt.setString(1,"all");//输入参数
stmt.registerOutParameter(2,Types.CHAR);//输出参数为一般参数
stmt.registerOutParameter(3,OracleTypes.CURSOR);//输出参数为结果集参数
stmt.executeQuery();
rs=((OracleCallableStatement)stmt).getCursor(3);//得到输出结果集参数
ResultSetMetaDatarsmd=rs.getMetaData();
intnumberOfColumns=rsmd.getColumnCount();
Stringstr=stmt.getString(2);
System.out.println("其次个参数为:"+str);
System.out.println("结果集列数"+numberOfColumns);
//列出结果集中的记录
ResultSetMetaDatamd=rs.getMetaData();
intnColumns=md.getColumnCount();
for(inti=1;i<=nColumns;i++){
System.out.print(md.getColumnName(i)+((i==nColumns)?"\n":"\t"));
if(i==2)System.out.print("\t");
}
while(rs.next()){
for(inti=1;i<=nColumns;i++){
System.out.print(rs.getString(i)+((i==nColumns)?"\n":"\t"));
}
}
}
catch(SQLExceptionex){
System.err.println(ex.getMessage()+"连数据库有问题!");
}
returnrs;
}
}
输出结果为:
其次个参数为:Hello,may~
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年川南幼儿师范高等专科学校单招职业适应性测试模拟测试卷附答案
- 巴彦淖尔市能源(集团)有限公司2025年第三批招聘备考题库完整答案详解
- 常宁市2025年公开遴选公务员备考题库完整答案详解
- 常平镇2026年第一季度会计主管公开招聘备考题库及参考答案详解
- 2026年电工上岗考试试题及答案(名师系列)
- 2026年浙江旅游职业学院单招职业倾向性考试题库及答案1套
- 2026年天津理工大学中环信息学院单招职业技能考试题库附答案
- 广东文艺职业学院2025年公开招聘事业编制人员备考题库完整答案详解
- 广东省城市技师学院2025年公开招聘工作人员备考题库及1套参考答案详解
- 广东翁源2026年第一批公开招聘教师暨公开选聘教师备考题库带答案详解
- 人事行政部2026年年度计划
- 2025贵州贵阳产业发展控股集团有限公司招聘27人考试参考题库附答案
- 2026贵州省法院系统招聘聘用制书记员282人笔试参考题库及答案解析
- 自然资源部所属单位2026年度公开招聘工作人员备考题库(第一批634人)含答案详解
- 2025内蒙古交通集团有限公司社会化招聘168人笔试考试参考试题及答案解析
- 苏州工业园区领军创业投资有限公司招聘备考题库必考题
- 新疆2025新疆师范大学招聘事业编制人员(专任教师岗与实验教师岗)总笔试历年参考题库典型考点附带答案详解(3卷合一)
- 2026年日历表含农历(2026年12个月日历-每月一张A4可打印)
- 自考《影视编导》03513复习备考试题库(含答案)
- 周围神经损伤及炎症康复诊疗规范
- 青海工程建设监理统一用表
评论
0/150
提交评论