Apache Derby - 建立表



CREATE TABLE 語句用於在 Derby 資料庫中建立一個新表。

語法

以下是 CREATE 語句的語法。

CREATE TABLE table_name (
   column_name1 column_data_type1 constraint (optional),
   column_name2 column_data_type2 constraint (optional),
   column_name3 column_data_type3 constraint (optional)
);

在 Apache Derby 中建立表的另一種方法是,您可以使用查詢指定列名和資料型別。此方法的語法如下所示:

CREATE TABLE table_name AS SELECT * FROM desired_table WITH NO DATA;

示例

以下 SQL 語句建立一個名為 Student 的表,其中包含四列,其中 id 是主鍵,並且是自動生成的。

ij> CREATE TABLE Student (
   Id INT NOT NULL GENERATED ALWAYS AS IDENTITY,
   Age INT NOT NULL,
   First_Name VARCHAR(255),
   last_name VARCHAR(255),
   PRIMARY KEY (Id)
);
> > > > > > > 0 rows inserted/updated/deleted

DESCRIBE 命令透過列出列及其詳細資訊來描述指定的表(如果表存在)。您可以使用此命令驗證表是否已建立。

ij> DESCRIBE Student;
COLUMN_NAME |TYPE_NAME |DEC&|NUM&|COLUM&|COLUMN_DEF|CHAR_OCTE&|IS_NULL&
------------------------------------------------------------------------------
ID |INTEGER |0 |10 |10 |AUTOINCRE&|NULL |NO
AGE |INTEGER |0 |10 |10 |NULL |NULL |NO
FIRST_NAME |VARCHAR |NULL|NULL|255 |NULL |510 |YES
LAST_NAME |VARCHAR |NULL|NULL|255 |NULL |510 |YES
4 rows selected

使用 JDBC 程式建立表

本節將教您如何使用 JDBC 應用程式在 Apache Derby 資料庫中建立表。

如果您想使用網路客戶端請求 Derby 網路伺服器,請確保伺服器已啟動並正在執行。網路客戶端驅動程式的類名為 org.apache.derby.jdbc.ClientDriver,URL 為 jdbc:derby://:1527/DATABASE_NAME;create=true;user=USER_NAME;password=PASSWORD"。

按照以下步驟在 Apache Derby 中建立表:

步驟 1:註冊驅動程式

要與資料庫通訊,首先需要註冊驅動程式。Class 類的 forName() 方法接受一個表示類名的字串值,將其載入到記憶體中,這會自動註冊它。使用此方法註冊驅動程式。

步驟 2:獲取連線

通常,我們與資料庫通訊的第一步是連線到它。Connection 類表示與資料庫伺服器的物理連線。您可以透過呼叫 DriverManager 類的 getConnection() 方法來建立連線物件。使用此方法建立連線。

步驟 3:建立語句物件

您需要建立 StatementPreparedStatementCallableStatement 物件來將 SQL 語句傳送到資料庫。您可以分別使用 createStatement()prepareStatement()prepareCall() 方法建立這些物件。使用適當的方法建立其中一個物件。

步驟 4:執行查詢

建立語句後,需要執行它。Statement 類提供各種方法來執行查詢,例如 execute() 方法用於執行返回多個結果集的語句。executeUpdate() 方法執行諸如 INSERT、UPDATE、DELETE 之類的查詢。executeQuery() 方法用於返回資料的查詢等。使用這些方法中的任何一個並執行先前建立的語句。

示例

以下 JDBC 示例演示瞭如何使用 JDBC 程式在 Apache Derby 中建立表。在這裡,我們使用嵌入式驅動程式連線到名為 sampleDB 的資料庫(如果不存在則會建立)。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class CreateTable {
   public static void main(String args[]) throws Exception {
      //Registering the driver
      Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
      //Getting the Connection object
      String URL = "jdbc:derby:sampleDB;create=true";
      Connection conn = DriverManager.getConnection(URL);

      //Creating the Statement object
      Statement stmt = conn.createStatement();
 
      //Executing the query
      String query = "CREATE TABLE Employees( "
         + "Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, "
         + "Name VARCHAR(255), "
         + "Salary INT NOT NULL, "
         + "Location VARCHAR(255), "
         + "PRIMARY KEY (Id))";
         stmt.execute(query);
         System.out.println("Table created");
   }
}

輸出

執行上述程式後,您將獲得以下輸出

Table created
廣告

© . All rights reserved.