Oracle データベースでは、主キーは各テーブル内の行データを一意に識別するために使用される制約です。主キー制約により、テーブル内のデータ行が一意であることが保証されるため、データベースを設計する際には、テーブルに主キーを設定することが非常に重要です。 Oracleで主キーを設定する方法を詳しく説明します。
テーブルを作成するときに、主キー制約を設定することでテーブルの主キーを定義できます。以下は、テーブルの作成時に主キー制約を設定するための構文です。
CREATE TABLE table_name ( column1 datatype constraint constraint_name PRIMARY KEY, column2 datatype, column3 datatype, ..... );
上記の構文では、column1
はテーブル内の列名を表し、datatype
はテーブル内の列名を表します。は列のデータ型を表します。 PRIMARY KEY
制約は主キー制約の設定に使用され、constraint_name
は主キー制約の名前です。
たとえば、Employee
テーブルを作成し、EmployeeID
列を主キーとして設定できます。
CREATE TABLE Employee ( EmployeeID number(10) constraint pk_Employee PRIMARY KEY, FirstName varchar2(50), LastName varchar2(50), Age number(3) );
に主キー制約を追加する テーブルの作成時に主キー制約が設定されていない場合は、テーブルの作成後に主キー制約を追加することもできます。以下は、既存のテーブルに主キー制約を追加するための構文です。
ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n);
上記の構文では、table_name
は、主キー制約が適用されるテーブルの名前を表します。追加され、constraint_name
は主キーです制約の名前 (column1, column2, ... column_n)
は主キーとして設定される列名を表します。主キーとして設定できます。
たとえば、Orders
テーブルを作成した場合、そのテーブルに OrderID
列と OrderDate
列を主キーとして追加できます。
ALTER TABLE Orders ADD CONSTRAINT pk_Orders PRIMARY KEY (OrderID, OrderDate);
主キー制約を設定すると、Oracle はテーブルに Null 値が表示されることを自動的に禁止します。挿入されたデータの行に Null 値が含まれている場合、その行は拒否され、エラー メッセージが表示されます。したがって、テーブル内の主キー列のすべての値が Null でないことを確認してください。
場合によっては、Null 値を許可するために主キーが必要になります。現時点では、Null 値を許可するには、主キー列で NULL
キーワードを使用する必要があります。
たとえば、Employee
テーブルで、従業員を EmployeeID
列で識別したくない場合は、Null 値を許可するように設定できます。
CREATE TABLE Employee ( EmployeeID number(10) constraint pk_Employee PRIMARY KEY, FirstName varchar2(50), LastName varchar2(50), Age number(3), AltEmpID number(10) NULL );
上記はOracleで主キー制約を設定する方法です。主キーの設定は、データベースのパフォーマンスとデータの整合性にとって非常に重要であるため、データベースを設計するときは、データの一貫性と整合性を確保するために必ず主キー制約を設定してください。
以上がオラクルは主キーを設定しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。