Statement (2)

原创 2007年09月24日 21:36:00

public boolean execute(String sql) throws SQLException

方法说明:execute方法可以输入任何形式的SQL命令,包括DDL与DML的SQL命令。使用execute方法执行输入的SQL命令后,如果返回值为True,表示数据库返回一个ResultSet对象或多个ResultSet 对象,此时可以利用getResultSet 与 getMoreResultSets 的方法取得ResultSet 的对象;反之如果为 false,表示数据库的执行结果并没有产生任何 ResultSet,此时就可以就利用getUpdateCount 来获得插入、修改或者删除的记录条数。

1、参数:sql ----- 任何形式的SQL命令。

2、返回值: boolean ----- 如果为 true 表示返回一个ResultSet,可以利用getResultSet 的方法来取得;反之如果为false表示返回是数据变动的条数捉者是已经没有任何结果。

3、异常: SQLException ----- 执行execute 方法时,数据库发生任何的错误,则会产生一个SQLException的对象。

4、附加:与getUpdateCount、getResultSet 及getMoreResults 方法搭配。

---------------------------------------------------------------------------------------

public int getUpdateCount() throws SQLException

方法说明:必须与execute 方法一起使用,如果execute 执行SQL命令之后的返回值为false,就可以利用 getUpdateCount 获得插入、修改或者删除的记录条数。

1、参数:无。

2、返回值: int ----- 如果execute 执行的是插入、修改或者删除语句,则返回值表示插入、修改或者删除的记录条数;如果返回的整型值为 -1,表示返回值为ResultSet 的对象或者是根本已经没有任何结果。

3、异常: SQLException ----- 数据库发生任何的错误,则会产生一个SQLException的对象。

4、附加:与execute 方法搭配。

--------------------------------------------------------------------------------------- 

public ResultSet getResultSet() throws SQLException

方法说明:必须与execute 方法一起使用,如果execute方法返回值为 true,就可以利用getResultSet 方法取得ResultSet 的对象。

1、参数:无 。

2、返回值: ResultSet ----- 如果为 true 表示目前的ResultSet 对象。如果为null 表示为结果可能是数据更动的条数捉者是已经没有任何结果。

3、异常: SQLException ----- 数据库发生任何的错误,则会产生一个SQLException的对象。

4、附加:与execute 方法搭配。

---------------------------------------------------------------------------------------

public boolean getMoreResults() throws SQLException

方法说明:使用execute方法时,可能是执行数据库上的存储过程(Store Procedure),数据库的存储过程可以返回多个ResultSet 对象,当利用getResult 取得一个ResultSet 的对象之后,我们可以执行getMoreResults() 方法来得知是否还有其他的ResultSet。如果Return值是true,表示还有其他的ResultSet,就可以利用getResultSet方法来取得另外一个ResultSet;若Return值为 false,表示已经没有其他的ResultSet。

1、参数:无 。

2、返回值: boolean ----- 如果为 true 表示下一个返回值为ResultSet对象;反之如果为false表示返回是数据变动的条数捉者是已经没有任何结果。

3、异常: SQLException ----- 数据库发生任何的错误,则会产生一个SQLException的对象。

4、附加:如何确认 execute 执行之后,已经没有任何结果呢? 如果 getMoreResults 返回 false 的话,表示已经没有任何的ResultSet 的对象,然后在使用 getUpdateCount 确认也没有任何的数据更新。所以使用下面的方式来判断: (!getMoreResults()) && (getUpdateCount()==-1)

---------------------------------------------------------------------------------------

《重构--改善既有代码的设计》读书笔记之三:分解并重组statement() part2

运用Replace Temp with Query把statement()中的totalAmount 和 frequentRenterPoints临时变量去掉: 用Customer类的getTo...

Caused by: org.h2.jdbc.JdbcSQLException: Table "T_STUDENT_INFO" not found; SQL statement

1、错误描述 org.hibernate.exception.SQLGrammarException: error executing work at org.hibernate.exception...

JDBC(2)—Statement

介绍: 获取到数据库连接之后,就可以对数据库进行一些增、删、改操作,但是却不能进行查询操作。 增删改操作是程序到数据库的一个操作过程,但是查询是程序到数据库——数据库返回到程序的一个过程。 步骤:...
  • T_P_F
  • T_P_F
  • 2017年07月16日 22:50
  • 171

Zend Framework教程-Zend_Db-数据库操作2-Zend_Db_Statement

一、Zend_Db_Statement官方文档翻译。 zend此部分文章,没有给出中文翻译,其实如果少有pdo开发经验的人,也不难看懂。这里做粗略的补全,如有歧义,可以参考原文理解。 Ze...

jsp基础——JDBC(2)@Statement

基于上篇文章jsp基础——JDBC(1). 定义—— 实体类Student。@如下: package org.zp.entity; public class Student {    pri...

Invalid bound statement (not found): com.shizongger.chapter2.mapper.UserMapper.insertUser

在配置MyBatis时报错信息如下: Invalid bound statement (not found): com.shizongger.chapter2.mapper.UserMapper....

Hibernate连接池三种配置实例 以及解决C3P0错误:com.mchange.v2.c3p0.stmt.GooGooStatementCache - Problem with checked-in Statement, discarding.

Hibernate支持第三方的连接池,官方推荐的连接池是C3P0,Proxool,以及DBCP。在Hibernate连接池配置时需要注意的有三点:一、Apche的DBCP在Hibernate2中受支持...

mysql-2-Statement|PreparedStatement|CallableStatement

1. Statement:一个接口 oracle定义: The object used for executing a static SQL statement and returning th...

Generate statement for hardcode

  • 2013年09月06日 13:04
  • 65KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Statement (2)
举报原因:
原因补充:

(最多只允许输入30个字)