Java程序设计课件:80.Statement和PreparedStatement的区别.pptx

上传人(卖家):罗嗣辉 文档编号:2046108 上传时间:2022-01-21 格式:PPTX 页数:20 大小:454KB
下载 相关 举报
Java程序设计课件:80.Statement和PreparedStatement的区别.pptx_第1页
第1页 / 共20页
Java程序设计课件:80.Statement和PreparedStatement的区别.pptx_第2页
第2页 / 共20页
Java程序设计课件:80.Statement和PreparedStatement的区别.pptx_第3页
第3页 / 共20页
Java程序设计课件:80.Statement和PreparedStatement的区别.pptx_第4页
第4页 / 共20页
Java程序设计课件:80.Statement和PreparedStatement的区别.pptx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、山东商业职业技术学院Java程序设计课程开发组Statement和PreparedStatement的区别2 2 学习目标知识目标掌握PreparedStatement的使用掌握语句对象与预处理语句对象的区别能力目标能够使用PreparedStatement对象实现数据维护操作3 3 使用Statement维护SQL Server数据库表中的数据,对数据表进行增删改查操作使用Statement对象根据运行时输入的数据对数据表进行增删改查操作使用Statement执行SQL语句4 4 使用Statement对象添加数据3-1try Class.forName(com.microsoft.sqls

2、erver.jdbc.SQLServerDriver); catch (ClassNotFoundException e) System.out.println(无法找到驱动类);Connection con = null; Statement stmt = null; ResultSet rs = null; 使用Statement对象把运行时输入的员工信息添加到数据表emp5 5 使用Statement对象添加数据3-2try con = DriverManager.getConnection(“”, “, “); stmt = con.createStatement(); System.

3、out.println(“请输入姓名:“); String eName = input.next(); System.out.println(“请输入性别:“); String eSex = input.next(); String sql = “insert into emp(eName, eSex) value(” + eName + ”, ” + eSex + ”)”; int rows = stmt.executeUpdate(sql);6 6 使用Statement对象添加数据3-3catch (SQLException e) e.printStackTrace(); finally

4、 try if(stmt != null) stmt.close(); if(con != null & !con.isClosed() con.close(); catch (SQLException e) e.printStackTrace(); 7 7 练习 使用Statement对象更新数据表emp中的员工信息,对应的更新信息需要运行时输入 使用Statement对象删除数据表emp中符合条件的员工信息,对应的条件取值需要运行时输入 使用Statement对象在emp表中查询符合条件的员工信息,对应的条件取值需要运行时输入8 8 PreparedStatement PreparedSt

5、atement接口继承Statement接口 实现将SQL语句预先处理,减轻数据库的负担,提高访问数据库的速度 简化SQL语句的书写 PreparedStatement接口接口 (预编译的(预编译的 SQL 语句)语句) Statement 接口接口 提高了代码的可读提高了代码的可读性和可维护性性和可维护性 提高了提高了SQL语句执语句执行的性能行的性能 提高了安全性提高了安全性9 9 JDBC工作步骤第三步try String sql = “SQL语句”; PreparedStatementPreparedStatement pstmtpstmt = = con.prepareStateme

6、ntcon.prepareStatement( (sqlsql); ); catch (SQLException e) e.printStackTrace(); 第三步:创建PreparedStatement对象以下为创建添加员工语句对象示例:try Connection con = DriverManager.getConnection(); String sql = “insert into emp(eName, eSex) values(?, ?)”; PreparedStatement pstmt = con.prepareStatement(sql); catch (SQLExcep

7、tion e) e.printStackTrace(); 创建语句对象前,要先确定预处理的创建语句对象前,要先确定预处理的SQL语句语句1010 JDBC工作步骤第四步try pstmt.setXXXpstmt.setXXX( (第第n n个问号个问号, , 对应问号位置上的赋值对应问号位置上的赋值); ); int row = pstmt.executeUpdatepstmt.executeUpdate() (); catch (SQLException e) e.printStackTrace(); 第四步:执行SQL的增删改语句以下为执行添加员工信息示例:try System.out.p

8、rintln(“请输入姓名:“); String eName = input.next(); System.out.println(“请输入性别:“); String eSex = input.next(); pstmt.setString(1, eName); pstmt.setString(2, eSex); int row = pstmt.executeUpdate(); catch (SQLException e) e.printStackTrace(); 1111 使用PreparedStatement对象添加数据3-1try Class.forName(com.microsoft.

9、sqlserver.jdbc.SQLServerDriver); catch (ClassNotFoundException e) System.out.println(无法找到驱动类);Connection con = null; PreparedStatement pstmt = null; ResultSet rs = null; 使用PreparedStatement对象把运行时输入的员工信息添加到数据表emp1212 使用PreparedStatement对象添加数据3-2try con = DriverManager.getConnection(“”, “, “); String

10、sql = “insert into emp(eName, eSex) values(?,?)”; pstmt = con.prepareStatement(sql); System.out.println(“请输入姓名:“); String eName = input.next(); System.out.println(“请输入性别:“); String eSex = input.next(); pstmt.setString(1, eName); pstmt.setString(2, eSex); int row = pstmt.executeUpdate();1313 使用Prepar

11、edStatement对象添加数据3-3catch (SQLException e) e.printStackTrace(); finally try if(pstmt != null) pstmt.close(); if(con != null & !con.isClosed() con.close(); catch (SQLException e) e.printStackTrace(); 1414 JDBC工作步骤第四步try pstmt.setXXXpstmt.setXXX( (第第n n个问号个问号, , 对应问号位置上的赋值对应问号位置上的赋值); ); ResultSet rs

12、= pstmt.executeQuerypstmt.executeQuery() (); catch (SQLException e) e.printStackTrace(); 第四步:执行SQL的查询语句以下为执行查询指定性别的员工信息示例:try String sql = “select eName, eSex from emp where eSex=?”; System.out.println(“请输入性别:“); String eSex = input.next(); pstmt.setString(1, eSex); ResultSet rs = pstmt.executeQuery

13、(); catch (SQLException e) e.printStackTrace(); 1515 使用PreparedStatement对象查询数据3-1try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch (ClassNotFoundException e) System.out.println(无法找到驱动类);Connection con = null; PreparedStatement pstmt = null; ResultSet rs = null; 使用PreparedStateme

14、nt对象根据运行时输入的员工性别查询用户信息1616 使用PreparedStatement对象查询数据3-2try con = DriverManager.getConnection(“”, “, “); String sql = “select eName, eSex from emp where eSex=?”; System.out.println(“请输入性别:“); String eSex = input.next(); pstmt.setString(1, eSex); ResultSet rs = pstmt.executeQuery(); while(rs.next() Sy

15、stem.out.print(rs.getString(“eName”) + “t”); System.out.println(rs.getString(“eSex”); 1717 使用PreparedStatement对象查询数据3-3catch (SQLException e) e.printStackTrace(); finally try if(rs != null) rs.close(); if(stmt != null) stmt.close(); if(con != null & !con.isClosed() con.close(); catch (SQLException e

16、) e.printStackTrace(); 1818 知识点小结1.1.语句对象执行查询语句的方法是什么语句对象执行查询语句的方法是什么2.2.语句对象执行增删改查语句的方法是什么语句对象执行增删改查语句的方法是什么3.3.如何判断结果集中是否还有数据行如何判断结果集中是否还有数据行4.4.如何获取结果集中对应行的字段取值如何获取结果集中对应行的字段取值1919 JDBC工作模板try Class.forNameClass.forName(JDBC(JDBC驱动类驱动类); ); catch (ClassNotFoundException e) System.out.println(无法找到

17、驱动类); Connection con = null; Statement stmt = null; ResultSet rs = null;try con=DriverManager.getConnectionDriverManager.getConnection(JDBC (JDBC URL,URL,数据库用户名数据库用户名, ,密码密码); ); stmt = con.createStatementcon.createStatement() (); rs = stmt.executeQuerystmt.executeQuery(SELECT a, b, c FROM Table1);

18、while (rs.nextrs.next() () int x = rs.getInt(a); String s = rs.getString(b); float f = rs.getFloat(c); catch (SQLException e) e.printStackTrace();finally try rs.closers.close(); (); stmt.closestmt.close(); (); con.closecon.close(); (); catch(SQLException e) . 第 一 步第 二 步第 三 步第 四 步第 七 步第 八 步第 五 步第 六 步山东商业职业技术学院Java程序设计课程开发组感谢您的学习

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(Java程序设计课件:80.Statement和PreparedStatement的区别.pptx)为本站会员(罗嗣辉)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|