gpt4 book ai didi

java - JDBC 如何更新一个数据库?

转载 作者:行者123 更新时间:2023-11-29 03:33:42 24 4
gpt4 key购买 nike

我正在学习OCPJP认证,实际上我在JDBC章节。我知道我可以通过两种方式更新数据库:第一种是使用 JDBC API,特别是 ResultSet 类中的 updatexxx 方法;第二个是通过 execute 方法发送一个语句,以便 DBMS 自己执行更新。所以,假设我有一个名为“contacts”的表,我想将“phoneNo”字段更新为“1234567890”,其中“name”字段等于“George”。请注意,我使用的是 MySQL。这之间有什么区别(如果有的话)

ResultSet resultset = statement.executeQuery("SELECT * FROM contacts WHERE name=\"George\"");
resultset.updateString("phoneNo", "1234567890");
updateRow();

还有这个?

statement.executeUpdate("UPDATE contacts SET phoneNo=\"1234567890\" WHERE name=\"George\"");

什么时候应该使用第一种方法,什么时候使用第二种方法?为什么我应该更喜欢其中一个而不是另一个?谢谢:D

最佳答案

这两个选项都会成功更新您的数据库。但是您的第二个选项 ExecuteUpdate 更好,原因如下:

1) 选项2中,大部分工作由数据库服务器完成,这是可取的,因为这是数据库的工作

2) 第一个选项要求从数据库服务器获取数据,在您的 Java 程序中进行操作,然后将其发送回数据库。您正在向数据库服务器发送多个请求。在第二个选项中,只有 1 个步骤。

3) 在您使用的第一个选项中 SELECT * .... ,这不是好的做法,因为您正在检索不必要的数据。您应该只检索所需的列,而不是所有列。即 SELECT PhoneNo

如果您正在编写代码以获得最佳性能,您应该使用选项 2,因为您正在执行单个请求,并且只将相关数据传递给您的数据库服务器

关于java - JDBC 如何更新一个数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26754178/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com