テーブル作成時に主キー制約を設定する

テーブル作成時に主キー制約を設定する方法は複数ありますが、
この記事では一番シンプルだと思う方法を記載します!

PR

主キー制約とは

制約の1つです。
データベースにおける「制約」とは「入力チェック」のことです。

主キー制約を設定することで、重複レコードの登録を防止できます。

登録しようしているレコードが重複しているかどうかをチェックし、
重複している場合はチェックエラーとし登録を防ぎます。

主キー制約を設定した列には「NULL」を設定できません。
※主キー制約はNOT NULL制約を包括しています。

PR

主キー制約を設定する

CREATE TABLEの中で、主キーとしたい列の右側に「PRIMARY KEY」と記載します。

CREATE TABLE employee(
	id      CHAR(5)      PRIMARY KEY,
	name    VARCHAR(12),
	sex     CHAR(2),
	section VARCHAR(12)
)
PR

主キー制約が設定されたことを確認する

同じレコードの登録を試みると、
・1行目のINSERT文は正常終了
・2行目のINSERT文は異常終了
します。

--実行するSQL
INSERT employee (id, name, sex, section) VALUES ('00001', '鈴木一郎', '男', '営業課')
INSERT employee (id, name, sex, section) VALUES ('00001', '鈴木一郎', '男', '営業課')
エラーメッセージ

制約 ‘PK__EMPLOYEE__3214EC275F3DFB12’ の PRIMARY KEY 違反。オブジェクト ‘dbo.EMPLOYEE’ には重複するキーを挿入できません。重複するキーの値は (00001 ) です。


テーブルを確認してみると、1レコード分のみ登録されていることが分かります。

SELECT * FROM employee

 

設定したい列の右側に「PRIMARY KEY」と記載する方法が、
一番シンプルで良いと思います!

タイトルとURLをコピーしました