oracle连接java的几种方法

系统 1880 0

归结来说有JDBC、ODBC-JDBC桥接 两种方法:

一、JDBC连接 Oracle的步骤
(1)装载并注册数据库的JDBC驱动程序

载入JDBC驱动:

Class.forName("oracle.jdbc.driver.OracleDriver");

注册JDBC驱动:

java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

(2)建立与数据库的连接

要建立与数据库的连接,首先要创建指定数据库的URL。连接数据库的URL对象,利用DriverManager 的getConnection方法建立的。数据库URL对象与 网络资源 的统一资源定位类似,其构成格式如下:

jdbc:subProtocol:subName://hostname:port;DatabaseName=ⅹⅹⅹ

其中:

jdbc表示当前通过Java的数据库连接进行数据库访问;

subProtocol表示通过某种驱动程序支持的数据库连接机制;

subName表示在当前连接机制下的具体名称;

hostname表示 主机名 ;

port表示相应的连接端口;

DatabaseName表示要连接的数据库的名称。

这里以与 Oracle数据库 的连接为例:

连接Oracle 8/8i/9i数据库(用thin模式)

url = jdbc:oracle:thin:@hostip:1521:oracleSID;

注意:hostip指主机的ip地址,oracleSID指数据库的SID。

再者确定连接数据库的用户名与密码,即user和password 的值:

user = “ⅹⅹⅹ “;

password = “ⅹⅹⅹ“;

最后使用如下语句:

Connection con=java.sql.DriverManager.getConnection(url,user,password);

(3)创建Statement对象

例如:

Statement stmt = con.createStatement();

(4)调用并执行SQL语句

例如:

String sql = “select a,b,c from table1";//table1为你所要查询的表名,a,b,c为所要查询的字段

ResultSet rs = stmt.executeQuery(sql);

(5)访问ResultSet中的记录集并从中取出记录

例如:

rs.next( );

rs.absolute(4);

String col1=rs.getString(1);

……..

(6)依次关闭ResultSet、Statement和Connection对象

例如:

rs.close();

stmt.close();

con.close();

 

二、ODBC-JDBC桥接

1 、工作原理:

     JDBC- ODBC (Open Database Connectivity,ODBC) 桥驱动 程序由 Sun Merant 公司 合开 , 主要功能是 JDBC API 转换 ODBC API , 然后 ODBC API 针对 商的 ODBC 驱动 程序来 访问 数据 , 即利用 JDBC- ODBC ODBC 来存 数据源 。如下 JDBC-ODBC 用模式

oracle连接java的几种方法

 

                                                                      1.1JDBC-ODBC 用模式
         JDBC- ODBC
是一个 JDBC 驱动 程序 , ODBC 而言 , 它像是通用的 用程序 , 桥为 所有适用于 ODBC 的数据 库实现 JDBC 。它作 sun.jdbc.odbc 实现 , 其中包含一个用来 访问 ODBC 的本地 。由于 ODBC 被广泛地使用 , 所以 点是 JDBC 够访问 几乎所有的数据 支持 ODBC 2.x, 是当前大多数据 ODBC 驱动 程序支持的版本。 桥驱动 程序 Java 用程序提供了一种把 JDBC 用映射 ODBC 用的方法。因此,需要在客 端机器上安装 ODBC 驱动 JDBC-ODBC JDBCAPI ODBCAPI 提供了一个 梁, 准的 JDBC 用翻 对应 ODBC 用,然后通 ODBC 把它 们发 送到 ODBC 数据源。

2 JDBC-ODBC 所用的配置

    sun.jdbc.odbc JDK 一起自 安装 , 无需特殊配置 Java 2 SDK 类库 中包含了用于 JDBC-ODBC 驱动 程序的 , 因此不再需要安装任何附加包就可以使用。但是 机需要通 生成数据源名 (Data Source Names , DSN) 来配置 ODBC 管理器 DSN 是一个把数据 驱动 程序、一些可 接起来的命名配置。具体配置方法如下 ( Windows XP 境下 ) :
         ( 1)
控制面板中 , 管理工具 数据源 (ODBC)-> DSN; (如 2.1

 

 

oracle连接java的几种方法

 

  2.1
         ( 2) ODBC 数据源管理器中的 DSN 中添加系 数据源 ( 如果没有找到 数据源的 驱动 程序 需要下 安装 ) 要注意 , 一定要用系 (DSN) 数据源 , 不能用用 (DSN) 数据源 , servlet (DSN), 所有的 jsp servlet 程序 , 需要 jdbc- odbc 驱动 , 都只能用系 ( DSN) 数据源 , 不能用用 ( DSN) 数据源。

3 、各数据 的不同配置( 解)

    3.1 Access
           (1)
添加 ->Driver do Microsoft Access(*.mdb)-> 完成

oracle连接java的几种方法

           (2) 入数据源名称 yiliangdian_access    

    3 )在数据 库标签 --> 选择 ,在列表中 选择 需要 接的数据 student.

 


oracle连接java的几种方法

     

4 单击 置登 名称 yiliangdian 与密 123456 与程序中 DriverManager.getConnection("jdbc:odbc: yiliangdian_access "," yiliangdian "," 123456 ") 一致。

oracle连接java的几种方法

      3.2 mysql
            (1)
access 中的( 1 )。
           
(2) 选择 mysql 数据源 驱动 , 如果没有 需要下 安装。 -> 完成

 

oracle连接java的几种方法

         (3) 入数据源名称 yiliangdian_mysql,Server:localhost( 如果 接其它 主机, IP),User:root,Password:123456,Databasse:student. ->OK

 

oracle连接java的几种方法

4

/**
* filename: joaccess.java
* fuction:
实现 jdbc-odbc 桥连 接方式方式
* writtenby yiliangdian @ 2008-4-18
**/
import java.sql.*;

public class joaccess {
   public static void main(String[] args) {
      //
建立和数据库的连接时要用好 Connection 接口

       Connection con;
      //
提供在基层连接上运行 SQL 语句
      Statement sql;
      //
Statement 执行了 SQL 语句以后,结果值是以结果集的方式返回的。
      ResultSet rs;
      try {
         
//jdbc-odbc 桥连接方式需要加载 jdbc-odbc 方式的驱动程序
           Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
     }catch(ClassNotFoundException e){
          System.out.println(""+e);
     }
     try{
           //DriverManager
类是 JDBC 的管理层,作用于用户和驱动之间。 DriverManager 类跟踪可用的驱动

            //
程序,并在数据库和相应驱动程序之间建立连接。 chenyuaccess 是建立的数据源名称,后两项是
             //
用户名,密码是建立数据源时设立的与数据库中的密码无关,该用户名密码可以为空。
             
// 不同的数据库连接只需要改变源名称,用户名和密码
         
con = DriverManager.getConnection("jdbc:odbc:yiliangdian_access","yiliangdian","123456");
            // 创建 Statement, 获取 Statement 实例,用于执行 SQL 语句

         
sql = con.createStatement();
            // 运行查询语句,返回 ResultSet 对象

         
rs = sql.executeQuery("select * from chengjibiao");
            while(rs.next()){
                    String number = rs.getString(1);
                   String name = rs.getString(2);
                   Date date = rs.getDate(3);
                   int math = rs.getInt(4);
                     System.out.println("
学号:
" + number);
                   System.out.println("
姓名:
" + name);
                   System.out.println("
生日:
" + date);
                   System.out.println("
数学:
" + math);
              }
         
con.close();
     }catch(SQLException e1)
     {
                System.out.println("sql
语句出错
:"+e1);
       }
}
}

 

参考: http://tayueerlai01.bokee.com/500929271.html

oracle连接java的几种方法


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论