MySQL学习笔记(11)

JDBC实现修改操作

如上,将数据库的连接和关闭封装在一个文件里,使用时直接调用即可

1. 获取数据库连接

connection = JDBCUtil.getConnection();

直接调用预先封装好的connection方法

2. 预编译statement语句,返回PreparedStatement实例

String sql = "update customers set name = ? where id = ?";
p1 = connection.prepareStatement(sql);

如上所示,先编写SQL语句,再使用PreparedStatement

3. 填充占位符,4. 执行SQL语句与前文相同

5.SQL关闭

直接调用即可

JDBCUtil.closeResource(connection,p1);

延申--使用JDBC执行通用的增删改操作

如前文所述,数据库的增删改操作本质上是十分相似的。因此,可以将增删改操作汇总成一个方法,使用时直接调用即可

按如下编写通用方法:

    public void update(String sql,Object...args) {//sql中占位符个数和可变形参长度相同
        Connection connection = null;
        PreparedStatement p1 = null;
        try {
            //1.获取数据库连接
            connection = JDBCUtil.getConnection();
            //2. 预编译statement语句,返回PreparedStatement实例
            p1 = connection.prepareStatement(sql);
            //3.填充占位符
            int i;
            for(i = 0; i<args.length; i++){
                p1.setObject(i+1,args[i]);//小心参数声明错误

            }
            //4. 执行操作
            p1.execute();
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            //5.资源关闭
            JDBCUtil.closeResource(connection,p1);
        }

    }

之后,在执行操作时,只需要编写SQL语句即可

    public void testCommonUpdate(){
        //String sql = "delete from customers where id = ?";
                //update(sql,3);
        //String sql = "update `order` set order_name = ? where order_id = ?";//关键字默认报错
        //update(sql,"DD","2");
        String sql = "insert into `order`(order_id,order_name,order_date) values(?,?,?)";
        update(sql,"5","CC","2001-1-1");
    }

注意在SQL书写规范中,如果数据表的名字和任意一种方法重名,那么就需要在表名上面打上“``

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值