java与数据库oracle连接学习之jdbc(2)增删查改

15 篇文章 0 订阅
12 篇文章 0 订阅
//学习链接: https://www.bilibili.com/video/BV14E411Q7wJ?p=2
package com.librarySystem;
import jdk.nashorn.internal.ir.RuntimeNode;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.DecimalFormat;
import java.util.Formatter;

public class ConnnectDatabase {
    //statement.executeQuery
    public static void query( Connection conn ){
        try{
        //3、创建语句对象
        Statement statement=conn.createStatement();
        //4、执行SQL语句
        String sql ="SELECT * FROM Reader";
        ResultSet resultSet  = statement.executeQuery(sql);
             //5、处理结果
            while(resultSet.next()) {
                //打印当前行的值
                String rno = resultSet.getString("RNO");
                String rname = resultSet.getString("RNAME");
                String rsex = resultSet.getString("RSEX");
                int rage = resultSet.getInt("RAGE");
                String rboss = resultSet.getString("RBOSS");
                String raddress = resultSet.getString("RADDRESS");
                Formatter f = new Formatter();
                f.format("%4s\t%6s\t%4s\t%-3d\t%6s\t%5s", rno, rname, rsex, rage, rboss, raddress);
                System.out.println(f);
            }
            //6、释放资源
            resultSet.close();
            statement.close();
        }catch (Exception e){
            e.printStackTrace();;
        }
    }
    // statement.executeUpdate
    public static void add(Connection conn){
        try{
            Statement statement = conn.createStatement();
            //执行SQL语句
            String sql = "Insert into reader (RNO,Rname,Rsex,Rage,Rboss, Raddress)values('R011','王尼玛','男',21,'李四','415')";
            int i = statement.executeUpdate(sql);
            if(i!=1){
                System.out.println("插入数据异常");
            }
            statement.close();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
    //
    public static void del(Connection conn){
        try{
            Statement statement = conn.createStatement();
            String sql ="Delete from reader where reader.rname='王尼玛'";
            int i= statement.executeUpdate(sql);
            if(i!=1){
                System.out.println("删除数据异常");
            }
            statement.close();
        }catch(Exception e){
            e.printStackTrace();
        }
    }

    public static void changeValue(Connection conn){
        try{
            Statement statement =conn.createStatement();
            String sql ="Update reader set rage=23 where reader.rno='R011'";
            int i= statement.executeUpdate(sql);
            if(i!=1){
                System.out.println("修改数据异常");
            }else{
                System.out.println("修改数据后");
            }
            statement.close();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
    public static void main(String args[]) {
        try {
            //1、加载驱动 从左侧的lib文件夹中获得
            Class.forName("oracle.jdbc.OracleDriver");

            //2、建立与数据库连接 需要
            // 主机地址 连接本机 localhost  或者127.0.0.1
            // 端口号 Oracle 数据库默认端口号 1521
            // 实例名 安装全的是orcl,没有安装全的是XE
            String url = "jdbc:oracle:thin:@localhost:1521:orcl";   // jdbc:oracle:thin: @主机地址 :  端口号 : 实例名
            //  下面的user和password是在sqlplus上可以登录的账户和密码
            String user = "cc";
            String password = "ccpassword";

            Connection conn = DriverManager.getConnection(url, user, password);
            //执行sql是自动提交 可以通过conn.setAutoCommit(false);设置手动提交,即提交conn.commit(); 回退conn.rollback();
            if (!conn.isClosed()){
                System.out.println(conn);
            }else {
                System.out.println("Sorry,failed  connecting to the Database");
            }

           add(conn);
            query(conn);
            
            changeValue(conn);
            query(conn);
            
            del(conn);
            query(conn);
            //6、释放资源
            conn.close();
        }catch(Exception e){
            e.printStackTrace();
        }

    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值