(JSP程序设计实用案例教程)ch4JDBC数据库编程.ppt

(JSP程序设计实用案例教程)ch4JDBC数据库编程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JDBC数据库编程 本章目标 JDBC概述 JDBC驱动程序 安装ODBC 使用JDBC访问数据库的步骤 使用SQL语句对数据库进行操作 专用JDBC驱动程序连接SQL Server数据库 数据库的高级操作 JDBC概述 JDBC(Java DataBase Connectivity)是用于执行SQL语句的Java应用程序接口,由一组用Java语言编写的类与接口组成。JDBC是一种规范,它让各数据库厂商为Java程序员提供标准的数据库访问类和接口,这样就使得独立于DBMS的Java应用程序的开发工具和产品成为可能。将Java和JDBC结合起来将使程序员只须写一遍程序就可让它可向任何数据库发送SQL语句,可在任何平台上运行。也就是说,不必为同样的JSP操作写一个程序访问Microsoft SQL Server,再写另一个程序访问Oracle。JDBC的主要类包有以下两java.sql包和javax.sql包。 JDBC驱动程序 ?目前,比较常见的JDBC驱动程序可分为以下4种类型: ??(1)JDBC-ODBC桥加ODBC驱动程序:JDBC-ODBC桥产品利用ODBC驱动程序提供JDBC访问。在服务器上必须可以安装ODBC驱动程序。 ?(2)本地API:这种类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。 ?(3)JDBC网络纯Java驱动程序:这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。 ?(4)本地协议纯Java驱动程序:这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。 使用JDBC访问数据库的步骤 1.建立数据源 2 装载驱动程序 3 建立连接 4. 创建Statements对象, 发送SQL语句, 处理结果. 5完成数据库操作后,依次调用各个对象的Colose(?)方法,关闭数据库连接,释放所占的资源。 使用SQL语句对数据库进行操作 查询操作 查询操作可以使用Statement 对象executeQuery方法,其语法如下: public ResultSet executeQuery(String sql) throws SQLException 该方法执行后返回一 ResultSet对象的语句,ResultSet对象被称为结果集,它代表符合SQL语句条件的所有行, 它通过一套get方法提供了对这些行中数据的访问,即使用getXXX 方法检索数据,如getInt() 用于检索整型值,getString() 用于检索字符串值, get方法很多,究竟用哪一个getXXX()方法,由列的数据类型来决定。getXXX()方法可以根据列号得到值,也可以根据列名得到值。 注意: 1.返回的ResultSet游标最初位于第一行之前,而不是位于第一行;第一次调用next()后,游标置于第一行,使它成为当前行。随着每次调用next(),导致游标向下移动一行,按照从上至下的次序获取ResultSet中的行。 2.可以利用索引来取当前列的值,如rs.getString(1)取得第一列的值,在这里即用户名,注意第一列的索引是1而不是 0。 3.用rs.getString()取各列值时要按字段在ResatSet中的顺序,否则会引发错误。 比如,把程序中的rs.getString(userName)与rs.getString(trueName)互换位置,就会发生错误。 记录的插入、删除和更新操作 执行INSERT、UPDATE或DELETE语句以及SQL DDL语句,例如CREATE TABLE和DROP TABLE,可以使用Statement对象的executeUpdate方法,其语法如下: public int executeUpdate(String sql) throws SQLException 该方法返回一个整数,指示受影响的行数。 使用带参数的SQL语句 如果需要执行类似的SQL 语句多次,选择PreparedStatement预编译语句更为高效,在语句被真正执行前,先发送到数据库进行了编译过程。PreparedStatement对象可以用Connection对象的prepareStatement方法来生成,如下列语句(其中 conn 是 Connection 对象)生成带一个 参数占位符的 SQL 语句的 PreparedStatement 对象pstmt: PreparedStatement pstmt=conn.prepareStatement(insert into category(categoryName) values(

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档