zoukankan      html  css  js  c++  java
  • JDBC--Statement使用

    1、通过Statement实现类执行更新操作(INSERT、UPDATE 、DELETE):

    --1)获取数据库连接Connection的对象;

    --2)通过Connection类的createStatement()方法获取Statement对象;;

    --3)调用Satement类的executeUpdate(sql) 方法执行更新操作;

    --4)释放数据库资源(关闭Statement对象和Connection对象);

    public static int update(String sql){
        Connection conn = null;
        Statement statement = null;
        int influencedRows = 0;
        try{
            //获取数据连接
            conn = JDBCUtils.getConnection();
            //获取Statement对象
            statement = conn.createStatement();
            //执行更新操作
            influencedRows =  statement.executeUpdate(sql);
        }catch(Exception e){
            e.printStackTrace();
        }finally{
            //释放资源
            release(conn, statement);
        }
       //返回受影响行数
    return influencedRows; }

     2、通过Statement实现类执行查询并获取查询数据:

    --步骤与更新大致相同,但是这里使用Statement的executeQuery(sql)方法来执行查询操作,该操作将返回一个ResultSet结果集;

    --ResultSet以逻辑表格的形式封装了数据库操作的结果集,ResultSet类维护了一个游标,该游标一开始指向数据表第一行的前面,可通过其next()方法进行下移,若检测到下一行有数据,则游标下移,并返回true,此时可通过getXxx(columnIndex | columnName)等方法获取具体列的值。

    public static void query(){
        Connection conn = null;
        Statement statement = null;
        ResultSet rs = null;
        String sql = "select * from employees";
        try{
            //1、获取数据库连接
            conn = JDBCUtils.getConnection();
            
            //2、获取Satement对象
            statement = conn.createStatement();
            
            //3、调用Statement类的executeQuery(sql)方法获取结果集ResultSet
            rs = statement.executeQuery(sql);
                
            //4、获取ResultSet中的数据
            while(rs.next()){
                int id = rs.getInt("employee_id");
                String name = rs.getString("last_name");
                double salary = rs.getDouble("salary");
                System.out.println("ID: " + id);
                System.out.println("Last Name: " + name);
                System.out.println("Salary: " + salary);
            }
        }catch(Exception e){
            e.printStackTrace();
        }finally{
            //5、关闭数据库资源
            if(rs != null){
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
                
            release(conn, statement);
        }
    }
  • 相关阅读:
    基于proteus的数字电路设计
    AXI4自定义FPGA外设理论基础
    FPGA 原语之一位全加器
    FPGA原语初步试验
    PS的流水灯设计分析
    vivado2019操作之约束文件
    http 笔记1
    编写有效用例-笔记
    接口测试学习积累1
    模拟器学习
  • 原文地址:https://www.cnblogs.com/tengtao93/p/4963193.html
Copyright © 2011-2022 走看看