如何使用JDBC API刪除Oracle資料庫表中的所有記錄?


SQL 的 **TRUNCATE** 語句用於刪除表中的所有記錄。

語法

TRUNCATE TABLE table_name;

要使用 JDBC API 刪除表中的所有記錄,您需要:

**註冊驅動程式:** 使用 **DriverManager** 類的 **registerDriver()** 方法註冊驅動程式類。將驅動程式類名作為引數傳遞給它。

**建立連線:** 使用 **DriverManager** 類的 **getConnection()** 方法連線到資料庫。將 URL(字串)、使用者名稱(字串)、密碼(字串)作為引數傳遞給它。

**建立語句:** 使用 **Connection** 介面的 **createStatement()** 方法建立一個 Statement 物件。

**執行查詢:** 使用 Statement 介面的 **execute()** 方法執行查詢。

下面的 JDBC 程式建立與 Oracle 資料庫的連線,並刪除名為 dispatches 的表中的所有記錄:

示例

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class DeletingAllRows_Oracle {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
      //Getting the connection
      String oracleUrl = "jdbc:oracle:thin:@localhost:1521/xe";
      Connection con = DriverManager.getConnection(oracleUrl, "system", "password");
      System.out.println("Connection established......");
      //Creating the Statement
      Statement stmt = con.createStatement();
      //Query to delete all records in a table
      String query = "Truncate table DISPATCHES";
      //Executing the query
      stmt.execute(query);
      System.out.println("Table truncated....");
   }
}

輸出

Connection established......
Table truncated....

刪除後,如果您使用 select 語句驗證 Dispatches 表的內容,您將得到以下輸出:

SQL> select * from dispatches;
no rows selected

更新於:2019年7月30日

2K+ 次瀏覽

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.