この投稿では、次の内容について説明します。
- Oracle テーブルの PRIMARY KEY は何ですか?
- PRIMARY KEY を使用して Oracle テーブルを作成する
- 一意の PRIMARY KEY 制約名を使用して Oracle テーブルを作成する
- 複合 PRIMARY KEY を使用して Oracle テーブルを作成する
Oracle テーブルの PRIMARY KEY は何ですか?
Oracle では、PRIMARY KEY はテーブルのすべての行を一意に識別する列です。テーブル内のすべての行に個別の識別子があることが保証され、データの取得とテーブルのリンクのプロセスが簡素化されます。
テーブルに主キーが定義されると、Oracle は自動的にインデックス キーを作成します。これにより、クエリのパフォーマンスが向上します。さらに、この列には、一意性とデータの整合性を保証する null 値を格納できません。
PRIMARY KEY を使用して Oracle テーブルを作成する
「」という名前のテーブルを作成するには マネキン 」を PRIMARY KEY 列で使用するには、次のコマンドを実行します。
CREATE TABLE マネキン (
mannequin_id NUMBER PRIMARY KEY,
mannequin_type VARCHAR2 ( 10 ) 、
mannequin_detail VARCHAR2 ( 50 )
) ;
上記のコマンドは、3 つの列を持つテーブルを作成します。
- 「 mannequin_id 」はデータ型「」の一意の主キー列です 番号 」であり、NULL 値を格納することはできません。
- 「 mannequin_type ” はデータ型 “ の列です。 VARCHAR2 」で、最大長は 10 文字です。
- 「 mannequin_detail ” はデータ型 “ の列です。 VARCHAR2 」で、最大長は 50 文字です。
出力
出力には、テーブルの作成後に成功メッセージが表示されました。
ノート : PRIMARY KEY が作成されると、Oracle は PRIMARY KEY 制約を識別するためのデフォルト名を生成します。ただし、主キー制約は自分で定義できます。
一意の PRIMARY KEY 制約名を使用して Oracle テーブルを作成する
PRIMARY KEY CONSTRAINT に意味のある名前を定義するには、「 制約 」キーワード。たとえば、次のコマンドを入力して、「 労働者 」を PRIMARY KEY CONSTRAINT 名で入力し、「 実行する ' ボタン:
CREATE TABLE ワーカー (worker_id NUMBER、
worker_name VARCHAR2 ( 30 ) 、
worker_phone NUMBER ( 20 ) 、
worker_mail VARCHAR2 ( 50 ) 、
CONSTRAINT pk_worker PRIMARY KEY ( worker_id )
) ;
上記のコマンドは、「」という名前の新しいテーブルを作成します 労働者 」 4 列:
- 「 worker_id 」はデータ型「」の主キー列です 番号 」と主キー制約名「 pk_worker 」。
- 「 worker_name ” はデータ型 “ の列です。 VARCHAR2 」で、最大長は 30 文字です。
- 「 worker_phone ” はデータ型 “ の列です。 番号 」で、最大長は 20 桁です。
- 「 worker_mail ” はデータ型 “ の列です。 VARCHAR2 」で、最大長は 50 文字です。
出力
出力は、テーブルが正常に作成されたことを示しています。
複合 PRIMARY KEY を使用して Oracle テーブルを作成する
Oracle では、複合 PRIMARY KEY を使用してテーブルを作成することもできます。これは、PRIMARY KEY が複数の列で構成されることを意味します。以下のコマンドを実行して、「」という名前の新しいテーブルを作成します。 消費者 複合 PRIMARY KEY:
CREATE TABLE コンシューマー (consumer_id NUMBER、
consumer_firstname VARCHAR2 ( 30 ) 、
consumer_lastname VARCHAR2 ( 30 ) 、
consumer_mail VARCHAR2 ( 30 ) 、
CONSTRAINT pk_consumer PRIMARY KEY ( consumer_firstname、consumer_lastname )
) ;
上記のコードはテーブルを作成します “ 消費者 」を含む 4 つの列と、「」を含む複合 PRIMARY KEY consumer_firstname ' と ' consumer_lastname 」列:
- 「 consumer_id ” はデータ型 “ の列です。 番号 」。
- 「 consumer_firstname ” 列は、データ型の PRIMARY KEY の一部です “ VARCHAR2 」で、最大長は 30 文字です。
- 「 consumer_lastname ” 列は、データ型の PRIMARY KEY の一部です “ VARCHAR2 」で、最大長は 30 文字です。
- 「 consumer_mail ” はデータ型 “ の列です。 VARCHAR2 」で、最大長は 30 文字です。
- PRIMARY KEY 制約名は「 pk_consumer 」。
出力
出力には、複合主キーを使用して新しいテーブルを作成した後の成功メッセージが表示されます。
結論
PRIMARY KEY を使用してテーブルを作成するには、「 主キー 」で列を定義する際のキーワード テーブルの作成 ' 声明。 PRIMARY KEY が作成されると、Oracle は PRIMARY KEY 制約を識別するためのデフォルト名を生成します。ただし、ユーザーは「 制約 」キーワード。さらに、Oracle は複合 PRIMARY KEY を作成する機能も提供します。