利用JDBC进行Oracle访问

利用JDBC进行Oracle访问

ID:39246051

大小:663.00 KB

页数:29页

时间:2019-06-28

利用JDBC进行Oracle访问_第1页
利用JDBC进行Oracle访问_第2页
利用JDBC进行Oracle访问_第3页
利用JDBC进行Oracle访问_第4页
利用JDBC进行Oracle访问_第5页
资源描述:

《利用JDBC进行Oracle访问》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、课程目标掌握基本的数据库配置和管理熟练掌握SQL命令和SQL函数理解Oracle数据库体系结构使用Oracle的各种数据库对象使用PL/SQL编写存储过程使用PL/SQL编写触发器掌握基本的Oracle数据库管理2第十一章利用JDBC进行Oracle访问目标4概述JDBC(JavaDatabaseConnectivity)对ODBCAPI面向对象的封装和重新设计,使它易于学习和使用,而且能够编写不依赖厂商的代码,用以查询和操纵数据库。与所有JavaAPI一样,它是面向对象的,但并不是很高级别的对象集. JDBC可以访问包

2、括Oracle在内的各种不同数据库,但Oracle数据库包含许多独特的特性,只能通过使用标准JDBC的Oracle扩展来使用。Oracle扩展可尽可能的发挥JDBC能力。5OracleJDBC驱动程序1.Thin驱动程序2.OCI驱动程序3.服务器端内部驱动程序4.服务器端Thin驱动程序6使用OracleJDBC导入JDBC包importjava.sql.*;7注册JDBC驱动程序有两种注册OracleJDBC驱动程序的方法。第一种使用:Class.forName(“oracle.jdbc.OracleDriver”)

3、;第二种方法使用DriverManager。DriverManager类是JDBC的管理层,作用于用户和驱动程序之间。它跟踪可用的驱动程序,并在数据库和相应驱动程序之间建立连接。另外,DriverManager类也处理诸如驱动程序登录时间限制及登录和跟踪消息的显示等事务。DriverManager.registerDriver(neworacle.jdbc.OracleDriver());8打开数据流DriverManager.getConnection(URL,username,password);JDBCURL的标准

4、语法如下所示。它由三部分组成,各部分间用冒号分隔:jdbc:<子协议>:<子名称>JDBCURL的三个部分可分解如下:jdbc─协议。JDBCURL中的协议总是jdbc。子协议即将使用的驱动程序,子名称是oracle数据库服务名。Username程序连接数据库时使用的数据库用户名。Password用户名口令。9执行sql语句1、创建Statement对象Statementstmt=con.createStatement();2、使用Statement对象执行语句ResultSetrs=stmt.executeQuery(

5、"SELECTa,b,cFROMTable2");3、关闭Statement对象stmt.close();获得查询结果集ResultSetrs=stmt.executeQuery(“select语句”);while(rs.netxt()){数据类型variable_name=rs.get××(字段脚标或字段名);}关闭数据流关闭数据流连接是采用Connection对象的close方法。即时关闭数据流可以减少内存占用。语句如下:con.close();12在JDBC中调用存储过程CallableStatement对象为所有

6、的DBMS提供了一种以标准形式调用存储过程的方法。有两种调用形式:一种形式带结果参数,另一种形式不带结果参数。在JDBC中调用存储过程的语法如下所示。注意,方括号表示其间的内容是可选项;方括号本身并非语法的组成部份。{call过程名[(?,?,...)]}返回结果参数的存储过程的语法为:{?=call过程名[(?,?,...)]}不带参数的存储过程的语法类似:{call过程名}创建CallableStatement对象CallableStatement象是用Connection方法prepareCall创建的。下例创建C

7、allableStatement的实例,其中含有对存储过程getEMPData调用。该过程有两个变量,但不含结果参数:CallableStatementcstmt=con.prepareCall("{callgetEMPData(?,?)}");其中?占位符为IN、OUT还是INOUT参数,取决于存储过程getEMPData。14IN和OUT参数将IN参数传给CallableStatement对象是通过setXXX方法完成的。所传入参数的类型决定了所用的setXXX方法(例如,用setFloat来传入float值等)。如

8、果存储过程返回OUT参数,则在执行CallableStatement对象以前先注册每个OUT参数的JDBC类型,使用registerOutParameter方法来注册。语句执行完后,CallableStatement的getXXX方法将取回参数值。registerOutParameter使用的是JDBC类型(因此它与

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。