Apache-derby-create-table

提供:Dev Guides
移動先:案内検索

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ステートメントは、4列の 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://localhost:1527/DATABASE_NAME; create = true; user = USER_NAME; passw ord = PASSWORD "です。

Apache Derbyでテーブルを作成するには、以下の手順に従ってください-

ステップ1:ドライバーを登録する

データベースと通信するには、まずドライバーを登録する必要があります。 クラスの* forName()メソッドである *Class は、クラス名を表す文字列値を受け入れてメモリにロードし、メモリが自動的に登録します。 この方法を使用してドライバーを登録します。

ステップ2:接続を取得する

一般に、データベースと通信するための最初のステップは、データベースとの接続です。 Connection クラスは、データベースサーバーとの物理的な接続を表します。 DriverManager クラスの* getConnection()*メソッドを呼び出すことにより、接続オブジェクトを作成できます。 このメソッドを使用して接続を作成します。

ステップ3:ステートメントオブジェクトを作成する

SQLステートメントをデータベースに送信するには、 StatementPreparedStatement、またはCallableStatement オブジェクトを作成する必要があります。 これらは、それぞれ* 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