欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于ecplise和myecplise如何连接oracle数据库问题讲解

程序员文章站 2022-04-27 19:18:49
ecplise连接数据库 1.导入jar包 针对于11g的oracle版本,在以下目录中找到对应的jar并导入到项目运行环境中 app\oracle\product\11.2...

ecplise连接数据库

1.导入jar包

针对于11g的oracle版本,在以下目录中找到对应的jar并导入到项目运行环境中

app\oracle\product\11.2.0\dbhome_1\jdbc\lib下的ojdbc6.jar

app\oracle\product\11.2.0\client_1\oui\jlib\classes12.jar

2.新建一个 jdbc类进行如下操作

package com_it_JDBC;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.concurrent.CountDownLatch;

public class JdbcDemo {

    public static void main(String[] args) {

        //定义oracle数据库驱动的类
        String driverclass = "oracle.jdbc.OracleDriver";
        //定义连接oracle的Url
        String url = "jdbc:oracle:thin:@192.168.0.1:1521/orcl" ;
        //登入用户名
        String username = "admin" ;
        //密码
        String password = "root" ;

                Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        String querysql = "select * from person  ";
        try {
            //注册数据库的驱动程序,将类加载到内存中
            Class.forName(driverclass);
            //获得数据库连接
            conn = DriverManager.getConnection(url, username, password);
            //创建sql执行对象
            stmt=conn.createStatement();
            //执行sql语句,返回结果
            stmt.executeQuery(querysql);
            while (rs.next()) {
                String name  = rs.getString("name");
                String age  = rs.getString("age");
                String adress  = rs.getString("adress");
                String phone  = rs.getString("phone");
                System.out.println("姓名"+name  +"年龄"+age +"地址"+adress+"电话"+phone);
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
                try {
                    if (stmt!=null) {
                    stmt.close();
                    }
                    if (conn!=null) {
                    conn.close();
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }


3.myecplise的jdbc配置

如上所示;

区别在于:URL的格式不同

“`

String url = “jdbc:oracle:thin:@localhost:1521:orcl(sid);

“`

4.几种常见的报错:

1. IO 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186647552)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))

解决方法:数据库名的问题,在需要连接的数据库中运行如下语句

select INSTANCE_NAME from v$instance;将sid改为运行的结果即可

2.Io 异常: Invalid connection string format, a valid format is: “host:port:sid”

URL的格式问题:myecplise是如下格式:

jdbc:oracle:thin:@localhost:1521:orcl