首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在Java语句中使用execute()获得真或假

如何在Java语句中使用execute()获得真或假
EN

Stack Overflow用户
提问于 2015-04-08 17:36:01
回答 5查看 19.4K关注 0票数 2

我有语句对象,称为stmt,Connection object conn

代码语言:javascript
代码运行次数:0
运行
复制
stmt = conn.createStatement();
boolean b = stmt.execute("INSERT INTO employee VALUES('E001', 'Smith')")

但这总是产生。如果上述查询成功执行,则需要true,如果查询执行失败,则需要false。如何使用execute()方法实现该结果。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-04-08 17:45:50

如何使用execute()方法实现该结果。

不能。只有当结果有一个true时,它才会返回ResultSet。如果插入有问题,该方法将引发异常。来自文档

布尔执行(String)抛出SQLException 返回: 如果第一个结果是对象,则为true;如果为更新计数,则为false或没有结果 抛出: SQLException -如果发生数据库访问错误,则在关闭语句上调用此方法,在PreparedStatement或CallableStatement上调用该方法。 SQLTimeoutException -当驱动程序确定超过了setQueryTimeout方法指定的超时值,并且至少试图取消当前运行的语句时

票数 8
EN

Stack Overflow用户

发布于 2015-04-08 17:41:59

尝试在executeUpdate()上使用Statement方法。它应该返回一个int,指示行数。

票数 2
EN

Stack Overflow用户

发布于 2015-04-08 17:43:43

如果第一个结果是Statement.ececute()对象,则返回ResultSet;如果是更新计数或没有结果,则返回false。

您可以使用

int executeUpdate(String sql)

返回

1) SQL数据操作语言(DML)语句的行计数或 2) 0对于不返回任何内容的SQL语句

文档

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29521554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档