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

之后,在执行操作时,只需要编写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书写规范中,如果数据表的名字和任意一种方法重名,那么就需要在表名上面打上“``

你可能感兴趣的:(mysql,学习,java)