executeupdate

1、你好,区别如下:Statement接口提供了三种执行SQL语句的方法:executeQuery、executeUpdate和execute。2、使

1、你好,区别如下:Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。

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


(资料图片)

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

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

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

6、 方法executeUpdate 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。

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

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

9、对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。

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

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

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

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

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

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

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

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

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

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

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

21、 对于不知道返回内容,则情况更为复杂。

22、如果结果是 ResultSet 对象,则方法 execute 返回 true;如果结果是 Java int,则返回 false。

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

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

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

26、 当 SQL 语句的结果不是结果集时,则方法 getResultSet 将返回 null。

27、这可能意味着结果是一个更新计数或没有其它结果。

28、在这种情况下,判断 null 真正含义的唯一方法是调用方法 getUpdateCount,它将返回一个整数。

29、这个整数为调用语句所影响的行数;如果为 -1 则表示结果是结果集或没有结果。

30、如果方法 getResultSet 已返回 null(表示结果不是 ResultSet 对象),则返回值 -1 表示没有其它结果。

31、也就是说,当下列条件为真时表示没有结果(或没有其它结果): ((stmt.getResultSet() == null) && (stmt.getUpdateCount() == -1)) 如果已经调用方法 getResultSet 并处理了它返回的 ResultSet 对象,则有必要调用方法 getMoreResults 以确定是否有其它结果集或更新计数。

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

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

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

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

36、在这种情况下,当下列条件为真时表示没有其它结果: ((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1)) 下面的代码演示了一种方法用来确认已访问调用方法 execute 所产生的全部结果集和更新计数: stmt.execute(queryStringWithUnknownResults); while (true) { int rowCount = stmt.getUpdateCount(); if (rowCount >0) { // 它是更新计数 System.out.println("Rows changed = " + count); stmt.getMoreResults(); continue; } if (rowCount == 0) { // DDL 命令或 0 个更新 System.out.println(" No rows changed or statement was DDL command"); stmt.getMoreResults(); continue; } // 执行到这里,证明有一个结果集 // 或没有其它结果 ResultSet rs = stmt.getResultSet; if (rs != null) { . . . // 使用元数据获得关于结果集列的信息 while (rs.next()) { . . . // 处理结果 stmt.getMoreResults(); continue; } break; // 没有其它结果主要区别:execute:执行给定的 SQL 语句,该语句可能返回多个结果。

37、executeUpdate:执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句(如 SQL DDL 语句)一、方法executeUpdate:用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句。

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

39、对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。

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

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

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

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

44、因为多数程序员不会需要该高级功能 。

45、2、execute方法应该仅在语句能返回多个ResultSet对象、多个更新计数或ResultSet对象与更新计数的组合时使用。

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

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

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

49、方法executeUpdate  用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。

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

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

52、对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。

53、  如:  //加载数据库驱动  Class.forName("com.mysql.jdbc.Driver");  //使用DriverManager获取数据库连接  Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","1234");  //使用Connection来创建一个Statment对象  Statement  stmt = conn.createStatement();//执行DML语句,返回受影响的记录条数  return stmt.executeUpdate(sql);>方法execute:  可用于执行任何SQL语句,返回一个boolean值,表明执行该SQL语句是否返回了ResultSet。

54、如果执行后第一个结果是ResultSet,则返回true,否则返回false。

55、但它执行SQL语句时比较麻烦,通常我们没有必要使用execute方法来执行SQL语句,而是使用executeQuery或executeUpdate更适合,但如果在不清楚SQL语句的类型时则只能使用execute方法来执行该SQL语句了。

56、  如:  //加载驱动  Class.forName(driver);  //获取数据库连接  conn = DriverManager.getConnection(url , user , pass);//使用Connection来创建一个Statment对象  stmt = conn.createStatement();  //执行SQL,返回boolean值表示是否包含ResultSetboolean hasResultSet = stmt.execute(sql);//如果执行后有ResultSet结果集  if (hasResultSet)  {  //获取结果集  rs = stmt.getResultSet();  //ResultSetMetaData是用于分析结果集的元数据接口ResultSetMetaData rsmd = rs.getMetaData();int columnCount = rsmd.getColumnCount();  //迭代输出ResultSet对象  while (rs.next())  {//依次输出每列的值  for (int i = 0 ; i < columnCount ; i++ )  {  System.out.print(rs.getString(i + 1) + "/t");}  System.out.print("/n");  }}  else{  System.out.println("该SQL语句影响的记录有" + stmt.getUpdateCount() + "条");}两者区别具体表现:execute方法执行返回的都是布尔值。

57、executeupdate返回的都是int整数类型。

58、execute方法在执行SQL语句的时候比较麻烦,而executeupdate比较方便。

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

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

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

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

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

64、 方法executeUpdate 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。

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

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

67、对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。

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

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

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

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

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

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

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

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

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

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

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

79、 对于不知道返回内容,则情况更为复杂。

80、如果结果是 ResultSet 对象,则方法 execute 返回 true;如果结果是 Java int,则返回 false。

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

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

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

84、 当 SQL 语句的结果不是结果集时,则方法 getResultSet 将返回 null。

85、这可能意味着结果是一个更新计数或没有其它结果。

86、在这种情况下,判断 null 真正含义的唯一方法是调用方法 getUpdateCount,它将返回一个整数。

87、这个整数为调用语句所影响的行数;如果为 -1 则表示结果是结果集或没有结果。

88、如果方法 getResultSet 已返回 null(表示结果不是 ResultSet 对象),则返回值 -1 表示没有其它结果。

89、也就是说,当下列条件为真时表示没有结果(或没有其它结果): ((stmt.getResultSet() == null) && (stmt.getUpdateCount() == -1)) 如果已经调用方法 getResultSet 并处理了它返回的 ResultSet 对象,则有必要调用方法 getMoreResults 以确定是否有其它结果集或更新计数。

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

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

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

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

94、在这种情况下,当下列条件为真时表示没有其它结果: ((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1)) 下面的代码演示了一种方法用来确认已访问调用方法 execute 所产生的全部结果集和更新计数: stmt.execute(queryStringWithUnknownResults); while (true) { int rowCount = stmt.getUpdateCount(); if (rowCount >0) { // 它是更新计数 System.out.println("Rows changed = " + count); stmt.getMoreResults(); continue; } if (rowCount == 0) { // DDL 命令或 0 个更新 System.out.println(" No rows changed or statement was DDL command"); stmt.getMoreResults(); continue; } // 执行到这里,证明有一个结果集 // 或没有其它结果 ResultSet rs = stmt.getResultSet; if (rs != null) { . . . // 使用元数据获得关于结果集列的信息 while (rs.next()) { . . . // 处理结果 stmt.getMoreResults(); continue; } break; // 没有其它结果。

本文到此分享完毕,希望对大家有所帮助。

标签: 数据定义语言 下列条件

相关阅读

六代中医传人张喜海:守正中医创新治骨...

张医生,我们是专门过来找您看病的张院长,你看看我的病还能治吗?治骨病,找张喜海医生 纷杂的诊室...

2019-12-17 更新

庆70华诞 迎民族盛会——新阶层 新担...

拼搏砥砺七十载,大展宏图喜露颜。7月26日,由中华网河南频道主办,河南省委统战部新的社会阶层人士统战工作处...

2019-07-28 更新

河南首家无人机表演编队亮相 夜空中上...

【导语】河南地图、少林功夫、司母戊鼎、甲骨文、卢舍那大佛、鲸鱼、金字塔、雪花……200架无人机编队在夜空中...

2019-07-15 更新

executeupdate

1、你好,区别如下:Statement接口提供了三种执行SQL语句的方法:executeQuery、executeUpdate和execute。2、使

2023-02-19 更新

曲江文旅(600706.SH)控股股东旅游投资集...

智通财经APP讯,曲江文旅(600706 SH)发布公告,公司控股股东旅游投资集团于2023年2月17日将其所持公司5300万...

2023-02-19 更新

抓住机遇,与中国市场共成长——外国中...

随着中国成为全球第二大商品消费市场,进口规模持续扩大、结构不断优化,外国不少中小企业通过进博会、消博会...

2023-02-19 更新

快报:西青区靠前服务 助力企业开辟新赛道

天津北方网讯:本月初,中日合资企业、中国大冢制药有限公司(以下简称大冢制药)向西青区委、区政府送去了一...

2023-02-19 更新

天天视点!迟重瑞前妻是淮_迟重瑞前妻

1、1990年迟重瑞与大他十一岁的中国女富商陈丽华女士结婚,身边带着三个孩子(一个儿子两个女儿),二人已携手...

2023-02-19 更新

每日速讯:赠你一场盛世繁华全集txt_赠...

1、贺子华与沈珂的爱情,由恨起,因爱终有种婚姻。2、路坎坷,终圆满 ...

2023-02-19 更新

天天热讯:雪花神剑演员表电视猫_雪花神...

1、雪花神剑主演:杨恭如 陈炜 姜大卫 龚慈恩 米雪 袁文杰 徐少强 甄志强 卢惠光 高雄 王瀛 黎淑贤 缪非

2023-02-19 更新

天天速递!helly hansen中文官网_helly hansen

1、HellyHansen是挪威的牌子,因为刚进入中国,所以在国内的名气还不是很大,但在欧美和日韩早就有很高的人气...

2023-02-19 更新

环球观察:刘隋山正能量视频_刘隋山

1、这歌词出现在蒋蓉的歌曲《坚强》里,原歌词为“漫漫风雪路,勇敢是脚步,走过雨走过风,不经历风雨怎么能成...

2023-02-19 更新

广州领培教育咨询有限公司

1、广州领培教育咨询有限公司是一家集国际学校品牌建设与运营、国际课程学术提升辅导、国际教育课程开发和运营...

2023-02-19 更新

女生捡金手链被要求返还 网友:对方这...

女子在情人节当天翻了一天的垃圾桶,在一束花里,她发现里面有一个兰蔻的口红、一个金手链和520块钱,兴奋的将...

2023-02-19 更新

环球讯息:小马哥第六版来了!比奥迪A8...

在外观设计上,马自达6可以说是马自达目前最漂亮的车型了,要比奥迪A8,大众CC看起来还会有感觉。在动力系统部...

2023-02-19 更新

环球快资讯:2023款丰田海狮 最新报价...

丰田海狮内饰4把航空座椅(通风,加热,按摩,电动调节后背,旋转座椅,腿托,座椅前后电动动,纳帕真皮)沙发...

2023-02-19 更新

全球今头条!美的整体厨房怎么样_美的整...

1、整体橱柜是厨房的很重要组成部分,随着现在社会的发展,人们对于整体橱柜的要求也是越来越高了,好的整体橱...

2023-02-19 更新

全球新资讯:北京吉利大学学费是多少_北...

1、北京吉利大学。2、动漫学院很多老师都是出过书的。3、还有中央美术学院的老师任教。4、建议lz还是别去吉利...

2023-02-19 更新

全球热资讯!年报利润大增28%,强劲增长...

在漂亮业绩下,当梅赛德斯-奔驰的股东无疑是将会乐开花的,因为每股分红预计达到5 2欧元,这比2021年的5欧元...

2023-02-19 更新

世界看热讯:2021-2000上市公司新能源汽...

本人将中国上市公司新能源汽车数据精心整理为面板数据的形式,新能源汽车企业、新能源汽车企业行业具有533家,...

2023-02-19 更新

当前速讯:山内一典发布《GT赛车7》1.29...

如今系列制作人山内一典证实,这次更新档还会加入其它内容,并承诺这将会是一次“大”更新。这次也不例外,山...

2023-02-19 更新

世界简讯:忠肝不洒中原泪_中原泪

1、其实这首诗不存在,是瞎编的中原泪李白【其实并不】王师北定中原日出自陆游的《示儿》宝帘闲挂小银钩 出自...

2023-02-19 更新

世界短讯!女人不哭插曲_女人不哭演员表

1、田海蓉 饰章子君邓超 饰赵剑姚芊羽 饰阿梅贾乃亮 饰章子华刘佳1 饰章子月汤唯 饰尚丽雷恪生 饰申老...

2023-02-19 更新

赵雅淇年龄2019_赵雅淇年龄

1、赵雅淇今年(2016年)是33岁了。2、  赵雅淇:1983年5月20日出生于辽宁省,毕业于中山大学法律系、中央戏...

2023-02-19 更新

紫的拼音与组词_紫的组词和拼音

1、青紫,紫竹,宫紫,紫服,紫凤,酱紫,紫县,紫毫,紫陌,紫虚。2、青紫[qīngzǐ],解释:1 指古代高官印...

2023-02-19 更新

【全球时快讯】探秘北京精子库:80%男性...

文 赵斌“80%男性精子不合格”“严重脱发不能捐精”“捐精很挣钱”。。。。。。随着“志愿者精子合格率不到20...

2023-02-19 更新

借助个性化医疗 一种搁置的抗癌药物可...

弗吉尼亚联邦大学梅西癌症中心研究人员在今天的《分子癌症治疗》印刷版上发表的一项研究表明,三联铂对三阴性...

2023-02-19 更新

1月车企销量普遍大幅下滑,比亚迪凭何能...

1月车企销量普遍大幅下滑,比亚迪凭何能逆势增长超6成?

2023-02-19 更新

世界微动态丨2022年SUV总销量出炉,比亚...

2022年SUV总销量出炉,比亚迪宋家族排第一,哈弗H6排第三

2023-02-19 更新

世界热消息:保留经典元素新增插电混动...

保留经典元素新增插电混动总成,全新丰田C-HR实车图曝光

2023-02-19 更新

特斯拉Model Y后驱版价格上调,两千元...

特斯拉ModelY后驱版价格上调,两千元不多不少

2023-02-19 更新

全球速看:南开区开展禁毒宣传教育志愿...

天津北方网讯:新学期伊始,南开区开展禁毒宣传教育志愿服务进校园活动。在义兴里小学,禁毒民警通过仿真毒品...

2023-02-19 更新

“你好,天津”网络短视频大赛颁奖典礼...

图为颁奖典礼现场。本报记者王津摄天津北方网讯:我爱天津卫,幸福来相会,喝着海河的水,生活有滋又有味一曲...

2023-02-19 更新

新闻频道

社会

财经频道