Apache-derby-create-table
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ステートメントをデータベースに送信するには、 Statement 、 PreparedStatement、または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