java如何连接Oracle数据库问题
Oracle数据库纯属自学,不对请留言改正!
在学Oracle前相信已经大致知道mysql或sqlserver数据库,这个跟前面两个不大一样,你安装的时候让你输入一个密码,貌似是一个系统管理员密码,跟那个sqlserver sa 用户差不多,权限很大,但是好像这个数据库没有人往那个系统用户下建立数据库吧!具体不知道为什么!!安全?(我这里安装完第一次登陆用的 账号:system 密码:你安装时自己设的 ),我用Navicat Premium登陆的,见网上有用PLSQL的....登陆之后点击上面的用户->用户如图 点击那个个 scott
编辑那个账户 然后把那个锁定账户勾去,然后自己设置一个新的密码吧!!学习(学生狗!啊哈哈哈)一般用这个账户就够了
然后用scott 账户登陆,她下面有几个表,不用管,你建立表就直接建,剩下和mysql没什么区别了...除了其他一些语法....
下面是java链接数据库代码
自己建立了一个数据库 你在 navicat下按 ctrl+q 新建查询 复制下面代码执行
参考博客https://www.cnblogs.com/cainiaomahua/p/6183339.html
create table student ( id number(11) not null primary key, stu_name varchar(16) not null, gender number(11) default null, age number(11) default null, address varchar(128) default null );
导入jar包跟mysql差不多的...你懂的
先创建一个项目,然后在鼠标移到项目上右键-->new-->folder;folder name:lib;这样就在项目中创建了一个文件夹lib;然后将ojdbc6.jar包导入该文件夹中
该包分享地址:链接:https://pan.baidu.com/s/1jW_ofgU4eJmAn7Y2J5B46A 密码:epkz
建立java类,代码如下:
package com.Util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class DButil { public static Connection getConn(){ String driver = "oracle.jdbc.driver.OracleDriver";//这个基本不用动固定的 String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";//那个127.0.0.1是你IP地址,如果学习 //用ip也不用改1512是端口号,orcl是SERVICE_NAME 这个怎么看?你打开你Oracle安装目录,搜tnsnames.ora //用记事本打开搜service_name 等于号后面就是你要填的!! String user = "scott";//用户名 String password = "root";//密码 Connection conn = null; try { Class.forName(driver); System.out.println("------加载驱动成功-----"); conn = (Connection) DriverManager.getConnection(url, user, password); System.out.println("------连接成功-----"); } catch (ClassNotFoundException e) { System.out.println("------加载驱动失败,驱动类未找到------"); e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); System.out.println("------加载驱动失败------"); } return conn; } public static String gedata() { Connection connection = getConn(); try { PreparedStatement preparedStatement = connection.prepareStatement("select * from student" ); ResultSet resultSet = preparedStatement.executeQuery(); while (resultSet.next()) { System.out.println( resultSet.getString("STU_NAME")+"---名字"); System.out.println( resultSet.getString("ADDRESS")+"---地址"); System.out.println( resultSet.getInt("ID")+"---Id"); System.out.println( resultSet.getInt("AGE")+"---年龄"); System.out.println( resultSet.getInt("GENDER")+"---睡过的小姐姐"); //connection.close(); } } catch (SQLException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); System.out.println("意外的查询错误,请重试"); } return null; } public static void insert() { Connection connection = getConn(); try { PreparedStatement preparedStatement = connection.prepareStatement("insert into student values('1723','草泥马','171','127','天堂') " ); preparedStatement.executeUpdate(); } catch (SQLException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } public static void main(String[] args) { insert(); gedata(); } }
测试截图: