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

iON Cloud七月促销适合稳定不折腾的用户,云服务器新购半年付8.5折,洛杉矶/圣何塞CN2 GT线路,可选Windows系统

iON Cloud怎么样?iON Cloud今天发布了7月份优惠,使用优惠码:VC4VF8RHFL,新购指定型号VPS半年付或以上可享八五折!iON的云服务器包括美国洛杉矶、美国圣何塞(包含了优化线路、CN2 GIA线路)、新加坡(CN2 GIA线路、PCCW线路、移动CMI线路)这几个机房或者线路可供选择,有Linux和Windows系统之分,整体来说针对中国的优化是非常明显的,机器稳定可靠,比...

A400互联1H/1G/10M/300G流量37.8元/季

A400互联是一家成立于2020年的商家,本次给大家带来的是,全新上线的香港节点,cmi+cn2线路,全场香港产品7折优惠,优惠码0711,A400互联,只为给你提供更快,更稳,更实惠的套餐。目前,商家推出香港cn2节点+cmi线路云主机,1H/1G/10M/300G流量,37.8元/季,云上日子,你我共享。A400互联优惠码:七折优惠码:0711A400互联优惠方案:适合建站,个人开发爱好者配置...

昔日数据:香港云服务器(2G防御)、湖北云服务器(100G防御),首月5折,低至12元/月

昔日数据,国内商家,成立于2020年,主要销售湖北十堰和香港HKBN的云服务器,采用KVM虚拟化技术构架,不限制流量。当前夏季促销活动,全部首月5折促销,活动截止于8月11日。官方网站:https://www.xrapi.cn/5折优惠码:XR2021湖北十堰云服务器托管于湖北十堰市IDC数据中心,母鸡采用e5 2651v2,SSD MLC企业硬盘、 rdid5阵列为数据护航,100G高防,超出防...

executeupdate为你推荐
应用雷达雷达是什么东西eagleeye《鹰眼》的男主角是谁?腾讯年终奖腾讯工作怎么样seo优化技术做seo需要懂什么技术?小四号字word里的小四号字在Photoshop里是指多少点字体?js后退在全局js中屏蔽了后退功能,但是想让自己定义的后退有用模式识别算法机器学习和模式识别有什么区别?看教材,发现它们的算法都差不多一样啊。。。网络电话永久免费打有没有永久免费的网络电话assemblyinfoasp.net这几个文件是干什么的?部署工具如何使用office2016部署软件
256m内存 themeforest 密码泄露 京东云擎 搜狗12306抢票助手 ibrs 免费smtp服务器 云全民 cpanel空间 dux 空间论坛 微软服务器操作系统 安徽双线服务器 web服务器搭建 cxz 测试网速命令 百度新闻源申请 windowsserverr2 火山互联 neicun 更多