TOP

SQL レッスン 14. テーブルの作成 (CREATE TABLE)

YouLibreCalc for Excel logo

SQL 言語は、情報の処理だけでなく、テーブルの作成や操作など、データベースやテーブルに対するすべての操作の実行にも使用されます。

次を使用してテーブルを作成するには 2 つの方法があります。

  • ビジュアル インターフェイス - ほとんどの DBMS には、対話型のテーブルの作成と管理のためのビジュアル インターフェイスが備わっています。
  • SQL ステートメント - SQL ステートメントを直接使用してテーブルを操作できます。
  • DBMS 対話型ツールキットを使用する場合、実際には、すべての作業が SQL ステートメントによって行われることに注意してください。つまり、インターフェイス自体がユーザーに気づかれないようにこれらのコマンドを作成します (これは、Excel にマクロを記録するのと似ています。マクロ レコーダーはアクションを記録し、それを VBA コマンドに変換します)。


    1. テーブルの作成

    テーブルをプログラムで作成するには、演算子 CREATE TABLE を使用します。このためには、次のデータを指定する必要があります。

  • キーワード CREATE TABLE の後に指定されるテーブルの名前。
  • カンマで区切られたテーブル列の名前と定義。
  • 一部の DBMS では、テーブルの場所を指定することも必要です。
  • 新しいテーブルを作成し、Customers という名前を付けましょう。

    CREATE TABLE Customers (
    ID             CHAR(10) NOT NULL Primary key,
    Custom_name    CHAR(25) NOT NULL,
    Custom_address CHAR(25) NULL,
    Custom_city    CHAR(25) NULL,
    Custom_Country CHAR(25) NULL,
    ArcDate        CHAR(25) NOT NULL, DEFAULT NOWO)
    

    はい、最初に新しいテーブルの名前を指定し、次に括弧内に作成する列をリストします。同じテーブル内でそれらの名前を繰り返すことはできません。列名の後に、各フィールドのデータ型 (CHAR(10)) を指定し、フィールドに空の値を含めることができるかどうか (NULL または NOT NULL)、および主キーとなるフィールド (Primary key) を示します。

    SQL 言語では、各フィールドのデフォルト値を定義することもできます。つまり、ユーザーが特定のフィールドの値を指定しない場合、その値は DBMS によって自動的に設定されます。デフォルト値は、CREATE TABLE 演算子を使用して列を定義するときに、DEFAULT キーワードによって定義されます。

    2. テーブルの更新

    SQL でテーブルを変更するには、演算子 ALTER TABLE を使用します。この演算子を使用する場合は、次の情報を入力する必要があります。

  • 変更したいテーブルの名前。
  • 加えたい変更のリスト。
  • たとえば、テーブル Sellers に新しい列を追加して、販売者の電話番号を指定してみましょう。

    ALTER TABLE Sellers  
    ADD Phone CHAR (20)
    

    列を追加するだけでなく、列を削除することもできます。次に、Phone フィールドを削除しましょう。これを行うには、次のクエリを作成します。

    ALTER TABLE Sellers 
    DROP COLUMN Phone
    

    3. テーブルの削除

    テーブルは、DROP TABLE 演算子を使用して削除されます。 Sellers_new テーブルを削除するには、次のクエリを作成します。

    DROP TABLE Sellers_new
    

    多くの DBMS には、すでに他のテーブルにリンクされているテーブルの削除を防ぐルールがあります。これらのルールが適用され、そのようなテーブルを削除すると、DBMS はリレーションシップが削除されるまで削除操作をブロックします。このような対策により、必要なテーブルが誤って削除されることを防ぎます。