`
1enny
  • 浏览: 70575 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Java访问oracle11G存储过程

 
阅读更多
oracle224

Java访问oracle11G存储过程

SQL>SELECT*FROMSTUDENT;
IDNAME AGE
----------- -------------------- -----------
1张三20
2李四25
3王五30
4麻子30
5赵北60

SQL>
createorreplacepackagepack_paging--通过Java来访问列表类型的数据就必须创建带ref游标的包
as
typeref_paging_cursorisrefcursor;--声明ref游标类型
endpack_paging;

createorreplaceprocedurepro_paging(psinnumber,csinnumber,pagingoutpack_paging.ref_paging_cursor)
is
begin
openpagingforselectid,name,agefrom(selects.*,rownumrnfromstudent s)wherern>cs*(ps-1)andrn<=cs*ps;
end;



packagecom.test.oracle;

importjava.sql.CallableStatement;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;

/**
*@Description通过oracle来操作oracle的procedure
*@Author永文
*@Date2015-1-20下午5:05:36
*/
publicclassTestOracleProcedure {
privateStringjdbcDriver="oracle.jdbc.OracleDriver";
privateStringjdbcUrl="jdbc:oracle:thin:@192.168.91.3:1521:jiagulun";
privateConnectionconn=null;
privateCallableStatementcstmt=null;
privateResultSetrs=null;
publicstaticvoidmain(String[] args) {
newTestOracleProcedure().testOracleProcedurePaging(2, 3);
}
/**
*@Description通过oracle存储过程分页
*@Author永文
*@paramps第几页
*@paramcs每页的记录条数
*@Returnvoid
*/
publicvoidtestOracleProcedurePaging(intps,intcs){
try{
Class.forName(jdbcDriver);
conn= DriverManager.getConnection(jdbcUrl,"hr","hr");
cstmt=conn.prepareCall("{call hr.pro_paging(?,?,?)}");//调用过程
cstmt.setInt(1, ps);//设置参数
cstmt.setInt(2, cs);//设置参数
cstmt.registerOutParameter(3, oracle.jdbc.OracleTypes.CURSOR);//注册输出参数游标类型
cstmt.execute();
rs= (ResultSet)cstmt.getObject(3);
while(rs.next()){
System.out.println("学号:"+rs.getInt(1)+"姓名:"+rs.getString(2)+"年龄:"+rs.getInt(3));
}
}catch(SQLException e) {
e.printStackTrace();
}catch(Exception e ){
e.printStackTrace();
}finally{//关闭资源
if(conn!=null)
try{
conn.close();
}catch(SQLException e) {
e.printStackTrace();
}
if(rs!=null)
try{
conn.close();
}catch(SQLException e) {
e.printStackTrace();
}
}
}

}



























分享到:
评论

相关推荐

    Oracle11g从入门到精通2

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    oracle database 10g 完整参考手册part1

    第39章 Java存储过程 第40章 Oracle真正应用群集 第41章 网格体系结构和管理 第Ⅷ部分 指南 第42章 Oracle数据字典指南 第43章 调整应用程序和SQL旅行者指南 第44章 调整中的案例分析 第45章 Oracle Application ...

    oracle database 11g 高清完整中文版part2

     第44章 java 存储过程 第ⅶ部分 指 南  第45章 oracle 数据字典指南  第46章 应用程序和sql 调整指南  第47章 sql 结果缓存和客户端查询缓存  第48章 关于调整的示例分析  第49章 高级体系结构选项—— db...

    Oracle11g从入门到精通

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    Oracle_Database_11g完全参考手册.part2/3

    《Oracle Database 11g完全参考手册》全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有的新增功能和工具,如何执行功能强大的SOL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象,...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第2/2部分)

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053) 共2部分:此为第002部分 基本信息 原书名: OCA/OCP Oracle Database 11g All-in-One Exam Guide with CD-ROM: Exams 1Z0-051, 1Z0-052...

    oracle database 11g 完整参考手册中文高清完整版part3

     第44章 java 存储过程 第ⅶ部分 指 南  第45章 oracle 数据字典指南  第46章 应用程序和sql 调整指南  第47章 sql 结果缓存和客户端查询缓存  第48章 关于调整的示例分析  第49章 高级体系结构选项—— db...

    oracle database 11g完全参考手册 高清完整版part1 共3部分

     第44章 java 存储过程 第ⅶ部分 指 南  第45章 oracle 数据字典指南  第46章 应用程序和sql 调整指南  第47章 sql 结果缓存和客户端查询缓存  第48章 关于调整的示例分析  第49章 高级体系结构选项—— db...

    Oracle_Database_11g完全参考手册.part3/3

    《Oracle Database 11g完全参考手册》全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有的新增功能和工具,如何执行功能强大的SOL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象,...

    Oracle 10g 开发与管理

    我相信本文会对初学者使用oracle有一个初步的使用印象。右图为我所参 考的书籍。 目录 第一讲 Oacle关系数据库 9 一. Oracle的安装 9 二. 用浏览器进入em 企业管理器 11 三.启动DBCA的方法 11 四.服务设置 11...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第1/2部分)

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053) 共2部分:此为第001部分 基本信息 原书名: OCA/OCP Oracle Database 11g All-in-One Exam Guide with CD-ROM: Exams 1Z0-051, 1Z0-052...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    2. oracle11G自带一个卸载批处理\app\Administrator\product\11.2.0\dbhome_1\deinstall\deinstall.bat 3. 运行该批处理程序将自动完成oracle卸载工作,最后手动删除\app文件夹(可能需要重启才能删除) 4. 运行...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

     Oracle 数据库中的SQL是当今市场上功能最强大的SQL实现之一,而本书全面展示了这一工具的威力。如何才能让更多人有效地学习和掌握SQL呢?Karen Morton及其团队在本书中提供了专业的方案:先掌握语言特性,再学习...

    java 面试题 总结

    JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变...

    oracle数据库经典题目

    系统权限提供了在Oracle数据库系统范围内执行某种任务的操作能力,而对象权限则是一种赋予用户在指定的数据库对象(如表、视图、过程等) 16. Oralce数据库在进行物理备份有联机备份和脱机备份两种方式可供选择。 ...

    Oracle9i的init.ora参数中文说明

    语法: TIMESTAMP '1997-01-31 09:26:50.10' (将值存储为 11 个字节)。 默认值: 从 NLS_TERRITORY 中获得 nls_time_format: 说明: 指定一个字符串值, 设置 TIME 数据类型的默认值, 该数据类型包含 HOUR, MINUTE 和 ...

Global site tag (gtag.js) - Google Analytics