小烦恼

Oracle使用JDBC 总结

连接步骤

  1. 导入Oracle驱动包
  2. 编写代码
  String url="jdbc:oracle:thin:@localhost:1521:orcl";
  String user="scott";
  String password="tiger";
  //加载数据驱动
  Class.forName("oracle.jdbc.driver.OracleDriver");
  // 连接数据库
  Connection  conn = DriverManager.getConnection(url, user, password);
  1. 参数讲解
  • url 参数讲解
    • 协议(jdbc):子协议(oracle:thin):数据源标识(@localhost:1521:orcl)
      • jdbc:–>>Java Database Connectivity,即Java数据库连接,实质是一个Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC可做3件事情:1、连接数据库 2、发送SQL语句 3、(从数据库)接收处理结果。从连接字符串角度讲,指出连接数据库用的是JDBC的方式。
      • oracle:thin–>>指出连接的是oracle数据库,同时连接方式为thin方式,即瘦方式,不需要客户端的方式。与之对的另一种连接方式为胖方式:cli,这种方式需要安装客户端。
      • @localhost:1521:orcl
        • localhost 数据库的地址,非本地时可按为数据库的IP地址;
        • 1521 orcal数据库默认的监听端口,可换为其他监听端口;
        • orcl orcal数据库默认的一个实例,可按为其他实例名。
  • 加载驱动
		//oracle
		Class.forName("oracle.jdbc.driver.OracleDriver");
		//mysql
		Class.forName("com.mysql.jdbc.Driver");
  • 建立连接
		//oracle
   		DriverManager.getConnection(url, user, password);
   		//mysql
   		url = "jdbc:mysql://127.0.0.1:3306/datebase_name";
   		

使用步骤

  1. 创建声明
    • 执行静态SQL语句,通过使用Statement实例化实现,
    Statement stmt = conn.createStatement() ;
    
    • 执行动态SQL语句,通过使用PreparedStatement实例化实现,
     PreparedStatement pstmt = conn.prepareStatement(sql);
    
    • 执行存储过程,一般通过CallableStatement实例实现
     CallableStatement cstmt = conn.prepareCall("{CALL demoSp(? , ?)}") ;
    
  2. 执行SQL
  • Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 和execute
    • ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。
    ResultSet rs = stmt.executeQuery("SELECT * FROM ...");
    
    
    • int executeUpdate(String sqlString):用于执行INSERT、UPDATE或DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
    int rows = stmt.executeUpdate("INSERT INTO ...") ;
    
  • execute(String sql):用于执行返回多个结果集、多个更新计数或二者组合的语句。
       boolean flag = stmt.execute(sqlString);
    
  1. 处理结果
  2. 关闭资源 先内向外,

错误解决方案

Io 异常: The Network Adapter could not establish the connection
解决方案一
  1. 一般此类异常是连接的url配置有误,确认是否有误?
    我的配置:jdbc:oracle:thin:@localhost:1521:orcl
  2. 检查oracle监听服务是否启动(在windows服务中可查看)
  3. 确认监听终端IP及端口是否正确(DOS下查看——关键)
windows+R  输入cmd ,进入dos命令行,选择Oracle安装的磁盘 cd d:(进入D盘)
输入 lsnrctl  回车,在输入 status  回车 然后将localhost改为指定监控的ip即可

在这里插入图片描述

String url="jdbc:oracle:thin:@192.168.140.1:1521:orcl";
  String user="scott"; //用户名
  String password="tiger"; //密码
  //加载数据驱动
  Class.forName("oracle.jdbc.driver.OracleDriver");
  // 连接数据库
  Connection  conn = DriverManager.getConnection(url, user, password);
解决方案二
  1. 修改Oracle数据库中的监听文件
进入你的Oracle数据库  db_1\network\ADMIN    进入listener.ora文件
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      //HOST后的内容修改为本机的计算机名(进入此电脑,属性查看即可)
      (ADDRESS = (PROTOCOL = TCP)(HOST = 本机计算机名)(PORT = 1521))
    )
  )

  1. 修改该目录下的 tnsnames.ora 文件
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 本机计算机名)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
  1. 重启Oracle服务即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值