excute、excuteQuery和excuteUpdate的使用方法以及区别
来源:互联网 发布:java maven 命令 编辑:程序博客网 时间:2024/06/01 07:47
excute、excuteQuery和excuteUpdate的使用方法以及区别
在写一个简单的图书管理系统时,遇到了要执行的SQL语句,两句,如下:
int i = stmt.executeUpdate(sql);
ResultSet i = stmt.executeQuery(sql);
(这里sql代表一个SQL语句)
同样是要执行的SQL语句,为什么返回值类型不一样?带着这个问题,我将三个常见的excute语句查询了一下。其使用方法区别如下:
1.excute
execute方法应该仅在语句能返回多个ResultSet对象、多个更新计数或ResultSet对象与更新计数的组合时使用。当执行某个已存储过程 或动态执行未知 SQL 字符串(即应用程序程序员在编译时未知)时,有可能出现多个结果的情况,
2、excuteQuery
用于产生单个结果集的语句,例如 SELECT 语句。
3、excuteUpdate
用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。INSERT、UPDATE 或 DELETE 语句的效果是修改表中零行或多行中的一列或多列。executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数)。对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。
使用executeUpdate方法是因为在 createTableCoffees 中的 SQL 语句是 DDL (数据定义语言)语句。创建表,改变表,删除表都是 DDL 语句的例子,要用 executeUpdate 方法来执行。从它的名字里看出,方法 executeUpdate 也被用于执行更新表 SQL 语句。实际上,相对于创建表来说,executeUpdate 用于更新表的时间更多,因为表只需要创建一次,但经常被更新。
注:
查询参考:JDK.API 在里面找到Java.sql,其中的Statement类里面有三个的区别。一开始我还找错了,很多人都会犯这个误区,因为返回值得类型是ResultSet,所以在ResultSet里面找,这个里面是没有的。
- excute、excuteQuery和excuteUpdate的使用方法以及区别
- excuteQuery和executeUpdate的区
- LinkedHashMap和HashMap的区别以及使用方法
- JSON和JSONP的区别,以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- JSON和JSONP的区别,以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- JSON和JSONP的区别,以及使用方法
- LinkedHashMap和HashMap的区别以及使用方法
- synchronized和volatile的使用方法以及区别
- String、StringBuffer和StringBuilder的区别以及使用方法
- Server.Excute()的使用
- struts的excute方法
- c#中多态的学习与使用方法以及重写(覆盖)和重载的区别
- 代码解释php中闭包函数里面use的使用方法和区别,以及&引用的含义
- C语言之使用关系运算符、赋值运算符
- PJSIP实验
- 解决Virtual Box 下安装Mac OS X时出现的“hfs: could not initializc summary table for OSX Base System ”问题
- 第一次编程
- 《设计模式之禅》——工厂方法模式
- excute、excuteQuery和excuteUpdate的使用方法以及区别
- 使用 UI Automation 实现自动化测试--4.5
- 使用 UI Automation 实现自动化测试--4.4
- excel VBA编程之:单元格保护
- 关于搭建微信平台的感想
- 在Ubuntu上安装与配置Hadoop
- 解决Android SDK / Android Studio(IntelliJ IDEA)更新不了(被墙)的问题
- 使用 UI Automation 实现自动化测试--4.3
- 使用 UI Automation 实现自动化测试--4.2