前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PreparedStatement的用法「建议收藏」

PreparedStatement的用法「建议收藏」

作者头像
全栈程序员站长
发布2022-06-27 08:38:27
6810
发布2022-06-27 08:38:27
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

一、用法:

PreparedStatement是Statement的子接口,Statement在使用的过程中,直接拼写SQL是很容易出错的且难用的,PreparedStatement带有模版的思想,减少了出错的机率。

1、写sql模版,并和PreparedStatement绑定

String sqlsqlTemplate= “insert emp VALUE (?,?,?)”; PreparedStatement pstmt = con.prepareStatement(sqlsqlTemplate);

2、依次设置模版中??所带表的值

pstmt.setInt(1,9); //第一个参数,表示设置第几个值 pstmt.setString (2,”yangli”); pstmt.setInt(3,30);

3、执行

代码语言:javascript
复制
          String driver = "com.mysql.jdbc.Driver";
          String url = "jdbc:mysql://localhost:3306/test";
          String user  = "root";
          String password = "root";
        try {
            Class.forName(driver);
            con = DriverManager.getConnection(url,user,password);
            if(!con.isClosed())
                    String sqlTemplate = "insert emp VALUE (?,?,?)";
                    PreparedStatement pstmt = con.prepareStatement(sqlTemplate);
                    pstmt.setInt(1,9); //插入第n个数
                    pstmt.setString (2,"yangli");
                    pstmt.setInt(3,30);
                    int  rs = pstmt.executeUpdate();
                  pstmt.clase();
                  con.close();
        } catch (ClassNotFoundException e) {
            System.out.println("数据库数据异常"+e.toString());
            e.printStackTrace();
        } catch (SQLException e) {
            System.out.println("数据库数据异常"+e.toString());
            e.printStackTrace();
        }finally {
            System.out.println("数据库数据成功获取");
        }

二、和Statement的区别

1、PreparedStatement可以使用占位符,是预编译的,批处理比Statement效率高;

2、PreparedStatement和sql模板绑定,最后执行的时候,不再有sql语句

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/133594.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年6月8,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档