网站大量收购闲置独家精品文档,联系QQ:2885784924

第五讲:JDBC数据访问接口.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JDBC基础: 在数据库开发领域中有三方面必须掌握的内容,即:SQL语言、ODBC数据访问接口和JDBC数据访问接口。 开放式数据库互连ODBC(Open DataBase Connectivity)是微软公司开发的一套开发数据库系统应用程序的接口规范,支持应用程序以标准的ODBC函数和SQL语句操作各种不同的数据库;而Java数据库编程接口JDBC(Java DataBase Connectivity)是用于在Java程序中实现数据库操作功能并简化操作过程,JDBC也支持基本的SQL语句。 ODBC和JDBC都是一种驱动程序,能够实现应用程序与数据库的连接,严格的说应该是这两种驱动程序与各种数据库的驱动程序建立连接(各种数据库系统为了市场份额的占有,通常都会编写针对各种流行的应用程序的驱动程序,以方便数据库与应用程序之间的连接),并间接连接数据库,获得数据库中的数据;ODBC和JDBC都是驱动程序,实质上都是一种规范,数据库驱动程序只有符合了这种规范,才能与应用程序建立联系;驱动程序定义了所有数据库的访问规范,每种不同的数据库除了要符合这些规范之外,还有自己的具体的实现方式,这些实现方式是为了实现ODBC和JDBC这些规范而专门定义的。 JDBC是用于Java应用程序的连库所定义的一系列接口规范,在Java里面就表现为API,即java.sql包下的一系列接口和类,想要连库成功,就要用到这个包下的接口和类,要实现这些接口,即符合连库的规范。 位于java.sql包下的DriverManager类是Java驱动程序管理器,管理一组JDBC驱动程序的基本服务;通过DriverManager的静态方法getConnection()可以获得一个Connection类型的对象,该对象就代表一个与特定数据库的连接(会话),通过这个会话,应用程序就可以连接到数据库,即建立了应用程序与数据库的“桥梁”,之后,在这个会话中可以产生一个Statement对象,这个对象是用于执行静态的SQL语句并返回它所生成的结果,这里常用到的该对象的方法有executeUpdate()和executeQuery(),其中,executeUpdate()执行给定SQL语句,该语句可能为insert、update或delete语句,或者也可以是不返回任何内容的SQL语句(如SQL中的数据定义语句DDL),该方法不能执行select的SQL语句,即如果要查询数据库中的数据,则要借助于另一种方法,即executeQuery(),该方法会返回单个ResultSet对象,即会将执行到的所有记录返回,生成一个ResultSet对象,ResultSet是表示数据库结果集的数据表,它通常都是通过执行查询(select)数据库的语句生成,可以借助ResultSet对象的next()方法判断是否存在下一行(next()方法的原理同Iterator的hasNext()和Enumeration的hasMoreElements()是一致的,最后返回一个布尔值,即如果在结果集ResultSet中还有下一行就返回true,否则返回false),这里可以利用while循环来取出在结果集中的所有数据,也即查到的所有数据,ResultSet接口获得具体值的方法有getInt()或getString()以及其他的getXXX等,get后面的数据类型对应在数据库中的各字段的类型,同时,这些方法可以接收参数,就是要获得的结果在数据库中所属的字段名,当然也可以是索引号。 在向数据库中插入数据时,既可以每个sql语句都调用一次executeUpdate(),也可以将所有sql语句先初始化,然后借助Statement对象中的批处理,即将这一系列的命令语句都添加到Statement对象的当前批处理命令列表中,addBatch(String sql),最后,可以将这些命令一次性执行,即executeBatch();executeBatch()的效率高,在对数据库执行批处理时,一般都可借助该方法。 在对数据库进行操作时,如果是一系列的动作命令,而在这些命令的执行过程中发生了错误,那么此时就会导致有一些动作已经执行,而发生错误的语句的后面的语句没有执行,如果在将错误调试之后再次执行这段语句,那么就会导致重复数据的再次操作,因为这段语句在上次已经执行过一次,此时就可以借助数据库处理中的事务。 数据库事务(Database Transaction)是指作为单个逻辑工作单元执行的一系列操作,数据库事务一般用在当操作涉及到多个互有联系的关系表时,此时的这个操作就要保证每个关系中数据的完整性和稳定性,即对于这些数据的操作要么全部成功,要么全部失败;比如对数据库中几个有一定联系(数据库中一般用外键来表示表与表,即关系与关系之间的

文档评论(0)

hgcm729 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档