全面解析JDBC四修订版本.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
全面解析 JDBC 如何利用JDBC发送SQL语句? Statement 对象用于将SQL语句发送到数据库中。事实上有三种 Statement 对象,它们都作为在给定连接上执行 SQL语句 的包容器: Statement 、PreparedStatement(它从 Statement 继承而来)和 CallableStatement(它从 PreparedStatement 继承而来)它们都专用于发送特定类型的SQL语句: Statement 对象用于执行不带参数的简单 SQL语句;PreparedStatement 对象用于执行带或不带IN 参数的预编译 SQL语句;CallableStatement 对象用于执行对数据库已存储进程的挪用。 Statement 接口提供了执行语句和获取结果的大体方式;PreparedStatement 接口添加了处置 IN 参数的方式;而 CallableStatement 添加了处置 OUT参数的方式。 1.创建 Statement 对象 成立了到特定数据库的连接以后,就可用该连接发送 SQL语句。 Statement 对象用Connection 的方式createStatement 创 建,如以下代码段中所示: Connection con=(url,sunny,); Statement stmt=(); 为了执行Statement 对象,被发送到数据库的 SQL语句将被作为参数提供给 Statement 的方式: ResultSet rs=(SELECT a,b,c FROM Table2); 2.利用 Statement 对象执行语句 Statement 接口提供了三种执行SQL语句的方式: executeQuery 、executeUpdate和execute.利用哪个方式由SQL语句 所产生的内容决定。 方式 executeQuery 用于产生单个结果集的语句,例如 SELECT语句。方式 executeUpdate 用于执 行INSERT、UPDATE或 DELETE 语句和SQL DDL(数据概念语言)语句,例如CREATE TABLE和 DROP TABLE。INSERT、UPDATE或 DELETE 语句的成效是修改表中零行或多行中的一列或多列。 executeUpdate 的返回值是一个整数,指示受阻碍的行数(即更新计数)关于CREATE TABLE或 DROPTABLE 等不操作 行的语句,executeUpdate 的返回值总为零。 执行语句的所有方式都将关闭所挪用的 Statement 对象的当前打开结果集(若是存在).这意味着在 从头执行 Statement 对象之前,需要完成对当前 ResultSet 对象的处置。应注意,继承了 Statement 接 囗中所有方式的 PreparedStatement 接口都有自己的 executeQuery 、executeUpdate 和execute方式. Statement 对象本身不包括SQL语句, 因此必需给方式提供SQL语句作为参数。 PreparedStatement 对 象并非需要 SQL语句作为参数提供给 这些方式,因为它们已经包括预编译 SQL语句。 CallableStatement 对象继承这些方式的 PreparedStatement 形式。关于这些方式的 PreparedStatement 或 CallableStatement版本,利用查询参数将抛出 SQLException. 3.语句完成 当连接处于自动提交模式时,其中所执行的语句在完成时将自动提交或还原。语句在已执行且所有结 果返回时,即以为已完成。关于返回一个结果集的 executeQuery方式,在检索完ResultSet 对象的所有 行时该语句完成。关于方式executeUpdate,当它执行时语句即完成。但在少数挪用方式 execute 的情形 中,在检索所有结果集或它生成的更新计数以后语句才完成。 有些 DBMS 将已存储进程中的每条语句视为独立的语句;而另外一些那么将整个进程视为一个复合语 句。在启用自动提交时,这种不同就变得超级重要,因为它阻碍何时挪用 commit 方式。在前一种情形中 每条语句单独提交;在后一种情形中,所有语句同时提交。 4.关闭 Statement 对象 Statement 对象将由 Java 垃圾搜集程序自动关闭。而作为一种好的编程风格,应在不需要 Statement 对象时显式地关闭它们。这将当即释放 DBMS资源,有助于幸免潜在的内存问题。 5.利用方式execute execute 方式应该仅在语句能返回多个ResultSet 对象、多个更新计数或 ResultSet 对象

文档评论(0)

195****3829 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档