SQLite テーブルの作成

SQLite のCREATE TABLEステートメントは、任意の指定されたデータベースに新しいテーブルを作成するために使用されます。基本的なテーブルの作成には、テーブルの命名、列の定義、および各列のデータ型の定義が含まれます。

構文

CREATE TABLE ステートメントの基本的な構文は次のとおりです。

CREATE TABLE database_name.table_name(
   column1 datatype  PRIMARY KEY(one or more columns),
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

CREATE TABLE は、データベースシステムに新しいテーブルを作成するように指示するキーワードです。CREATE TABLE ステートメントの後には、テーブルの一意の名前または識別子が続きます。また、~を付けて指定することもできます。table_nameの database_name。

例

以下は、COMPANY テーブルを作成する例です。ID が主キーであり、NOT NULL 制約は、テーブルにレコードを作成する際にこれらのフィールドを NULL にできないことを示します。

sqlite> CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

もう 1 つテーブルを作成しましょう。これは後の章の演習で使用します。

sqlite> CREATE TABLE DEPARTMENT(
   ID INT PRIMARY KEY      NOT NULL,
   DEPT           CHAR(50) NOT NULL,
   EMP_ID         INT      NOT NULL
);

SQLIte コマンドの中の.tablesコマンドを使用して、テーブルが正常に作成されたかどうかを確認できます。このコマンドは、アタッチされたデータベース内のすべてのテーブルを一覧表示するために使用されます。

sqlite>.tables
COMPANY     DEPARTMENT

ここでは、先ほど作成した 2 つのテーブル COMPANY と DEPARTMENT を確認できます。

SQLite の.schemaコマンドを使用して、テーブルの完全な情報を取得できます。次のとおりです。

sqlite>.schema COMPANY
CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);
その他の拡張