Java连接Oracle - Lovemywx2

1187163927ch 2021-12-01 原文


Java连接Oracle

1,首先需要在Oracle安装完成之后新建一个用户

 1 --新建用户
 2 create user chenh identified by chenh;
 3 --解锁用户
 4 alter user chenh account unlock;
 5 alter user scott account unlock;
 6 --修改密码
 7 alter user chenh identified by chenh;
 8 --授予权限
 9 grant sysdba to chenh;
10 --授予chenh用户创建session的权限,即登陆权限
11 grant create session to chenh;
12 --授予chenh用户使用表空间的权限    
13 grant unlimited session to chenh;
14 --授予创建表的权限
15 grant create table to chenh;
16 --授予删除表的权限
17 grant drop table to chenh;
18 --插入表的权限
19 grant insert table to chenh;
20 --修改表的权限
21 grant update table to chenh;
22 --查看当前数据库实例名
23 select name from v$database;
24 --提交事务
25 commit;

 

2用户新建完成之后,可能会出现某个用户对标users没有权限的提示

1   -- 解决用户 XX 对 users表空间没有权限的问题
2  alter user chenh quota unlimited on users; 

 

 

3.新建一个测试表以及向其中插入几条数据

 1 --删除表
 2 drop table a;
 3 --新建表
 4 create table a(
 5 col1 varchar2(10),
 6 col2 varchar2(10),
 7 col3 varchar2(10),
 8 col4 varchar2(10)
 9 );
10 --查询
11 select * from a;
12 --插入语句 多执行几次,因为没有主键限制,故此处可以执行多次
13 insert into a (col1,col2,col3,col4) values (\'a1\',\'b\',\'c\',\'d\');
14 
15 commit;

4.需要在eclipse中新建一个java项目

打开eclipse(myeclipse)-> File(文件)-> New(新建) ->Project(工程) -> Java Project (Java 工程)

  Project Name: 项目名称 接着一路Next(下一步)或者直接Finish(完成)

5.需提前下载ojdbc6.jar 连接数据库驱动的JAR包

  这里提供下载地址:https://files.cnblogs.com/files/1187163927ch/blog.rar

      解压密码:1187163927

6.在eclipse(myeclipse)新建的项目中将ojdbc6.jar导入,记得build path.

  打开该项目树状图,将下载好的ojdbc6.jar直接拖到该项目中,然后鼠标左键选中该文件,右键Build Path即可。

7.新建一个java类,在其中连接数据库

  7.1连接数据库驱动

 1 import java.sql.Connection;
 2 import java.sql.DriverManager;
 3 import java.sql.SQLException;
 4 
 5 public class DBConnection {
 6     public static Connection dbConn(String name, String pass) {
 7        Connection c = null;
 8        try {
 9            Class.forName("oracle.jdbc.driver.OracleDriver");
10            // 要是导入驱动没有成功的话都是会出现classnotfoundException.自己看看是不是哪里错了,例如classpath这些设置
11        } catch (ClassNotFoundException e) {
12            e.printStackTrace();
13        }
14        try {
15            c = DriverManager.getConnection(
16                   "jdbc:oracle:thin:@localhost:1521:chenh", name, pass);
17            // 连接数据的方法有四种, 这个属于最简单的,一般用网页程序 chenh是你的数据库实例名称,在下载的文件test.sql中可以执行语句查看
18            // "jdbc:oracle:thin:@计算机名称:监听端口:系统实例名", username, password,
19            // 计算机名称,要是自己不知道可以在计算机属性查知.
20            // 监听端口一般默认是1521, 要是改变了就看自己的监听文件listener.ora
21            // 系统实例名一般是默认orcl, 要是不是的话就用 select name from v$database; 看看当前的实例名.在本程序中我更改了实例为chenh
22            // username,password,就是登陆数据库的用户名和密码.
23  
24 
25        } catch (SQLException e) {
26            e.printStackTrace();
27        }
28        return c;
29     }
30 }

   7.2 查询数据库

 1 import java.sql.Connection;
 2 import java.sql.ResultSet;
 3 import java.sql.SQLException;
 4 import java.sql.Statement;
 5 
 6 public class DB extends DBConnection {
 7     private static Connection con = null;
 8     private static Statement sql = null;
 9     private static ResultSet rs = null;
10  
11 
12     public static void main(String[] args) throws SQLException {
13        String COL1;
14        String COL2;
15        String COL3;
16        String COL4;
17        try {
18            con = dbConn("chenh", "chenh");
19            if (con == null) {
20               System.out.print("连接失败");
21               System.exit(0);
22            }
23            sql = con.createStatement();
24            rs = sql.executeQuery("select * from a");
25            System.out.println("COL1" + "            " + "COL2" + "             "+ "COL3"+ "             "+ "COL4");
26            while (rs.next()) {
27               COL1 = rs.getString(1);
28               COL2 = rs.getString(2);
29               COL3 = rs.getString(3);
30               COL4 = rs.getString(4);
31               System.out.println(COL1 + "         " + COL2 + "         " + COL3+ "         " + COL4);
32            }
33        } catch (Exception e) {
34            e.printStackTrace();
35  
36 
37        } finally {
38            con.close();
39        }
40     }
41 }

检查不报错之后,执行按钮,选中项目  右键 -> Run As -> Java Application  可看到如下结果:

 

 

 

 

  

 

发表于
2018-03-29 14:58 
Lovemywx2 
阅读(11662
评论(0
编辑 
收藏 
举报

 

版权声明:本文为1187163927ch原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/1187163927ch/p/8669859.html

Java连接Oracle - Lovemywx2的更多相关文章

  1. 应用于服务器的软件防火墙介绍 – flyfish

            近日有网友发来邮件询问在服务器系统上面运行什么样的防火墙软件效果比较好,之前论坛上也有关于哪些 […]...

  2. 分布式事务?咱先弄明白本地事务再说 – ACID

        过去一段时间面试的同学,对于数据库事务,可以按照配置正常使用,但很多都无法讲清楚和理解数据库事务这个东 […]...

  3. 教程-Delphi操作快捷键 – 疯狂delphi

    教程-Delphi操作快捷键 **************************************** […]...

  4. 豆瓣电影TOP250和书籍TOP250爬虫 – innerpeacez

    豆瓣电影TOP250和书籍TOP250爬虫 java 豆瓣电影 TOP250 和书籍 TOP250 爬虫 最近 […]...

  5. CSS奇思妙想 — 使用 CSS 创造艺术

    本文属于 CSS 绘图技巧其中一篇。之前有过一篇:在 CSS 中使用三角函数绘制曲线图形及展示动画 想写一篇关 […]...

  6. LabVIEW将字符串转化为十进制 – 克拉波隆方程

    LabVIEW将字符串转化为十进制 (1)作用:将ASCII当做成十六进制来表示,并计算这个十六进制数对应的十 […]...

  7. 观察者模式 – 只会一点java

    观察者模式 Posted on 2018-01-29 10:29  只会一点java  阅读(3934)  评 […]...

  8. jdk8下载地址 – 云の旋律

    jdk8下载地址        复制下载地址在浏览器打开,直接右键打开,有问题。 jdk8下载地址   链接: […]...

随机推荐

  1. 图像的感知与获取

    图像的感知与获取Image sensing and acquisition 图像是由“照射”源和形成图像的“场 […]...

  2. 某不知出处的题,前缀和后缀和预处理

    Description: 给出数列A1,A2,…,AN,并设 Bi = (A1 * A2 * A3 […]...

  3. 2019年5月笔记

    Feign统一原生熔断集成方式 feign-default-fallback-demo https://git […]...

  4. 破解东航的seriesid

    在查询东航航班的时候,请求数据中有个seriesid   调试js分析代码的过程就略过了,下面是整合的生成se […]...

  5. 【MM系列】SAP库龄报表逻辑理解

    公众号:matinal 本文作者:matinal 原文出处:http://www.cnblogs.com/SA […]...

  6. WEB框架之Tornado 前言 记得点个赞  小伙伴………………

    Tornado(龙卷风)和Django一样是Python中比较主流的web框架,Tornado 和现在的主流 […]...

  7. 前后端分离demo 旅馆管理系统

      前后端分离式开发已经流行了好几年了,不过我一直没有自己开发一个完整的应用,最近在学习angular,利用此 […]...

  8. 初识Kotlin之集合

    Kotlin的集合是让我为之心动的地方,丰富的高阶函数帮助我们高效开发。今天介绍Kotlin的基础集合用法、获 […]...

展开目录

目录导航