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

美国服务器20G防御 50G防御 688元CN2回国

全球领先的IDC服务商华纳云“美国服务器”正式发售啦~~~~此次上线的美国服务器包含美国云服务器、美国服务器、美国高防服务器以及美国高防云服务器。针对此次美国服务器新品上线,华纳云也推出了史无前例的超低活动力度。美国云服务器低至3折,1核1G5M低至24元/月,20G DDos防御的美国服务器低至688元/月,年付再送2个月,两年送4个月,三年送6个月,且永久续费同价,更多款高性价比配置供您选择。...

创梦网络-四川一手资源高防大带宽云服务器,物理机租用,机柜资源,自建防火墙,雅安最高单机700G防护,四川联通1G大带宽8.3W/年,无视UDP攻击,免费防CC

? ? ? ?创梦网络怎么样,创梦网络公司位于四川省达州市,属于四川本地企业,资质齐全,IDC/ISP均有,从创梦网络这边租的服务器均可以****,属于一手资源,高防机柜、大带宽、高防IP业务,另外创梦网络近期还会上线四川联通大带宽,四川联通高防IP,一手整CIP段,四川电信,联通高防机柜,CN2专线相关业务。成都优化线路,机柜租用、服务器云服务器租用,适合建站做游戏,不须要在套CDN,全国访问快...

美国多IP站群VPS商家选择考虑因素和可选商家推荐

如今我们很多朋友做网站都比较多的采用站群模式,但是用站群模式我们很多人都知道要拆分到不同IP段。比如我们会选择不同的服务商,不同的机房,至少和我们每个服务器的IP地址差异化。于是,我们很多朋友会选择美国多IP站群VPS商家的产品。美国站群VPS主机商和我们普通的云服务器、VPS还是有区别的,比如站群服务器的IP分布情况,配置技术难度,以及我们成本是比普通的高,商家选择要靠谱的。我们在选择美国多IP...

executeupdate为你推荐
jmh6.13 泗洪事件是怎么个情况、?林俊杰怎么了?知识分享平台关于分享职场技能的知识付费平台,大家有什么好推荐的吗?chrome系统Chromenbsp;OS是操作系统吗?chrome系统谷歌Chrome OS可以用来做什么?y码S`M`XXL`L`XL身高体重分别是多少?自定义表情手机qq添加的自定义表情怎么分组部署工具win10 评估和部署工具包有什么用云计划云计划创富平台有谁了解啊 是骗人的吗?天翼校园宽带天翼校园宽带 是怎么算时间的 一个月 是指从办理那天开始 往后 30天是一个月吗 还是 办理的那天所在的那个labelforhtml中label是什么意思啊?
qq云存储 电影服务器 cpanel mobaxterm iis安装教程 ev证书 元旦促销 40g硬盘 卡巴斯基官方免费版 息壤代理 lamp架构 免费稳定空间 windowsserver2012 so域名 symantec 热云 日本小学生 bwg linuxvi命令 免费php空间申请 更多