executeupdateexecuteUpdate()方法的使用

executeupdate  时间:2021-06-07  阅读:()

在Java中如何使用execute()、executeQuery()、executeUpdate()三个方法

execute(String sql) 执行给定的 SQL 语句,该语句可能返回多个结果。

executeQuery(String sql) 执行给定的 SQL 语句,该语句返回单个 ResultSet 对象 executeUpdate(String sql) 执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句) 头2种一般在查询中使用 最后一个在插入、更新、删除时使用

java execute,executeQuery和executeUpdate之间的区别

PreparedStatement接口提供了三种执行SQL语句的方法:executeQuery、executeUpdate和execute。

使用哪一个方法由SQL语句所产生的内容决定。

1、方法executeQuery用于产生单个结果集的语句,例如SELECT语句。

被使用最多的执行SQL语句的方法是executeQuery。

这个方法被用来执行SELECT语句,它几乎是使用最多的SQL语句。

2、方法executeUpdate用于执行INSERT、UPDATE或DELETE语句以及SQLDDL(数据定义语言)语句,例如CREATETABLE和DROPTABLE。

INSERT、UPDATE或DELETE语句的效果是修改表中零行或多行中的一列或多列。

executeUpdate的返回值是一个整数,指示受影响的行数(即更新计数)。

对于CREATETABLE或DROPTABLE等不操作行的语句,executeUpdate的返回值总为零。

使用executeUpdate方法是因为在createTableCoffees中的SQL语句是DDL(数据定义语言)语句。

创建表,改变表,删除表都是DDL语句的例子,要用executeUpdate方法来执行。

你也可以从它的名字里看出,方法executeUpdate也被用于执行更新表SQL语句。

实际上,相对于创建表来说,executeUpdate用于更新表的时间,因为表只需要创建一次,但经常被更新。

executeUpdate()方法的使用

方法executeUpdate 用于执行INSERT、UPDATE或DELETE语句以及SQLDDL(数据定义语言)语句,例如CREATETABLE和DROPTABLE。

INSERT、UPDATE或DELETE语句的效果是修改表中零行或多行中的一列或多列。

executeUpdate的返回值是一个整数,指示受影响的行数(即更新计数)。

对于CREATETABLE或DROPTABLE等不操作行的语句,executeUpdate的返回值总为零。

使用executeUpdate方法是因为在createTableCoffees中的SQL语句是DDL(数据定义语言)语句。

创建表,改变表,删除表都是DDL语句的例子,要用executeUpdate方法来执行。

也可以从它的名字里看出,方法executeUpdate也被用于执行更新表SQL语句。

扩展资料: 方法execute: 用于执行返回多个结果集、多个更新计数或二者组合的语句。

因为多数程序员不会需要该高级功能 execute方法应该仅在语句能返回多个ResultSet对象、多个更新计数或ResultSet对象与更新计数的组合时使用。

当执行某个已存储过程或动态执行未知SQL字符串(即应用程序程序员在编译时未知)时,有可能出现多个结果的情况,尽管这种情况很少见。

因为方法execute处理非常规情况,所以获取其结果需要一些特殊处理并不足为怪。

例如,假定已知某个过程返回两个结果集,则在使用方法execute执行该过程后,必须调用方法getResultSet获得第一个结果集,然后调用适当的getXXX方法获取其中的值。

要获得第二个结果集,需要先调用getMoreResults方法,然后再调用getResultSet方法。

如果已知某个过程返回两个更新计数,则首先调用方法getUpdateCount,然后调用getMoreResults,并再次调用getUpdateCount。

对于不知道返回内容,如果结果是ResultSet对象,则方法execute返回true;如果结果是Javaint,则返回false。

如果返回int,则意味着结果是更新计数或执行的语句是DDL命令。

在调用方法execute之后要做的第一件事情是调用getResultSet或getUpdateCount。

调用方法getResultSet可以获得两个或多个ResultSet对象中第一个对象;或调用方法getUpdateCount可以获得两个或多个更新计数中第一个更新计数的内容。

1、getResultSet 返回null意味着不是结果集可以理解为是一个更新计数或没有其它结果 2、getUpdateCount 返回影响的行数-1表示结果是结果集或没有结果 如果已经调用方法getResultSet并处理了它返回的ResultSet对象,则有必要调用方法getMoreResults以确定是否有其它结果集或更新计数。

如果getMoreResults返回true,则需要再次调用getResultSet来检索下一个结果集。

如上所述,如果getResultSet返回null,则需要调用getUpdateCount来检查null是表示结果为更新计数还是表示没有其它结果。

当getMoreResults返回false时,它表示该SQL语句返回一个更新计数或没有其它结果。

因此需要调用方法getUpdateCount来检查它是哪一种情况。

在这种情况下,当下列条件为真时表示没有其它结果: ((stmt.getMoreResults()==false)&&(stmt.getUpdateCount()==-1))。

参考资料: 百度百科——update 百度百科——ShellExecute

BuyVM($5/月),1Gbps不限流量流媒体VPS主机

BuyVM针对中国客户推出了China Special - STREAM RYZEN VPS主机,带Streaming Optimized IP,帮你解锁多平台流媒体,适用于对于海外流媒体有需求的客户,主机开设在拉斯维加斯机房,AMD Ryzen+NVMe磁盘,支持Linux或者Windows操作系统,IPv4+IPv6,1Gbps不限流量,最低月付5加元起,比美元更低一些,现在汇率1加元=0.7...

【IT狗】在线ping,在线tcping,路由追踪

IT狗为用户提供 在线ping、在线tcping、在线路由追踪、域名被墙检测、域名被污染检测 等实用工具。【工具地址】https://www.itdog.cn/【工具特色】1、目前同类网站中,在线ping 仅支持1次或少量次数的测试,无法客观的展现目标服务器一段时间的网络状况,IT狗Ping工具可持续的进行一段时间的ping测试,并生成更为直观的网络质量柱状图,让用户更容易掌握服务器在各地区、各线...

RackNerd 2022春节促销提供三款年付套餐 低至年付10.88美元

RackNerd 商家我们应该是比较熟悉的商家,速度一般,但是人家便宜且可选机房也是比较多的,较多集中在美国机房。包括前面的新年元旦促销的时候有提供年付10美元左右的方案,实际上RackNerd商家的营销策略也是如此,每逢节日都有活动,配置简单变化,价格基本差不多,所以我们网友看到没有必要囤货,有需要就选择。RackNerd 商家这次2022农历新年也是有几款年付套餐。低至RackNerd VPS...

executeupdate为你推荐
svn服务器搭建如何在本机搭建SVN服务器jstz谁有101网校的账号?腾讯技术腾讯简介----棋牌论坛三个知名的游戏相关论坛,要求有网址的!labelforhtml中label是什么意思啊?activitygroupAndroid中如何在ActivityGroup里面监听back按钮,使得可按要求实现哪个activity可返回,哪个不需要。。中信银行理财宝中信银行理财宝金卡怎样激活人脸识别解锁iphone人脸识别解锁微粒群算法粒子群算法优化下面的公式 要怎么做 能给个程序最好视频比特率是什么求解:视频格式搞成720p(1280 * 720),MP4,码率是10MB什么意思,详细点~
电信服务器租用 河北服务器租用 万网域名空间 justhost awardspace 加勒比群岛 紫田 nerd 谷歌香港 光棍节日志 evssl证书 info域名 华为4核 个人免费空间 godaddy域名证书 cdn联盟 如何建立邮箱 域名与空间 smtp虚拟服务器 德隆中文网 更多