Heim > Datenbank > MySQL-Tutorial > Was ist der Unterschied zwischen den Methoden „execute()', „executeQuery()' und „executeUpdate()' in JDBC?

Was ist der Unterschied zwischen den Methoden „execute()', „executeQuery()' und „executeUpdate()' in JDBC?

WBOY
Freigeben: 2023-09-17 14:33:12
nach vorne
1493 Leute haben es durchsucht

JDBC 中的execute()、executeQuery() 和executeUpdate() 方法有什么区别?

Sobald Sie ein Anweisungsobjekt erstellt haben, können Sie es mit einer der Methoden „execute()“, „executeUpdate()“ und „executeQuery()“ der Statement-Schnittstelle ausführen.

execute()-Methode: Diese Methode wird zum Ausführen von SQL-DDL-Anweisungen verwendet. Sie gibt einen booleschen Wert zurück, der angibt, ob das ResultSet-Objekt abgerufen werden kann.

Example

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Example {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();

      //Executing the statement
      String createTable = "CREATE TABLE Employee( "
         + "Name VARCHAR(255), "
         + "Salary INT NOT NULL, "
         + "Location VARCHAR(255))";
      boolean bool = stmt.execute(createTable);

      System.out.println(bool);
   }
}
Nach dem Login kopieren

Output

Connection established......
false
Nach dem Login kopieren

executeUpdate(): Diese Methode wird verwendet, um Einfüge-, Aktualisierungs-, Lösch- und andere Anweisungen auszuführen. Es gibt einen ganzzahligen Wert zurück, der die Anzahl der betroffenen Zeilen darstellt.

Example

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class ExecuteUpdateExample {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();
     
      String insertData = "INSERT INTO Employee("
         + "Name, Salary, Location) VALUES "
         + "('Amit', 30000, 'Hyderabad'), "
         + "('Kalyan', 40000, 'Vishakhapatnam'), "
         + "('Renuka', 50000, 'Delhi'), "
         + "('Archana', 15000, 'Mumbai')";

      int i = stmt.executeUpdate(insertData);
      System.out.println("Rows inserted: "+i);
   }
}
Nach dem Login kopieren

Output

Connection established......
Rows inserted: 4
Nach dem Login kopieren

executeQuery(): Diese Methode wird verwendet, um Anweisungen auszuführen, die Tabellendaten zurückgeben (z. B. select). Es gibt ein Objekt der ResultSet-Klasse zurück.

Beispiel

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ExecuteQueryExample {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();

      //Retrieving data
      ResultSet rs = stmt.executeQuery("Select *from Employee");

      while(rs.next()) {
         System.out.print("Name: "+rs.getString("Name")+", ");
         System.out.print("Salary: "+rs.getInt("Salary")+", ");
         System.out.print("City: "+rs.getString("Location"));
         System.out.println();
      }
   }
}
Nach dem Login kopieren

Ausgabe

Connection established......
Name: Amit, Salary: 30000, City: Hyderabad
Name: Kalyan, Salary: 40000, City: Vishakhapatnam
Name: Renuka, Salary: 50000, City: Delhi
Name: Archana, Salary: 15000, City: Mumbai
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Methoden „execute()', „executeQuery()' und „executeUpdate()' in JDBC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage