感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

【プログラミング 54時間目】Oracleの制約について

<スポンサーリンク>

基礎からのOracle (DVD付) (プログラマの種シリーズ)

基礎からのOracle (DVD付) (プログラマの種シリーズ)


・制約とは、データベースがデータを矛盾なくデータを保管するためのルールのこと。

Oracleで設定できる制約

NOT NULL:データが未入力の状態を禁止する
UNIQUE:列に同じ値を重複して入力するのを禁止する
CHECK:ユーザーが設定した条件に反することを禁止
FOREIGH KEY:別の表の列を参照できないことを禁止(参照できない値を入力させない)
PRIMARY KEY:その表で行を特定できないことを禁止

・制約を削除する方法

ALTER TABLE 表名 DROP CONSTRAINTS 制約の名前;

ALTER TABLE 表名 DROP 制約の種類;

※ALTERによる変更はROLLBACKすることはできないので注意すること!!

・NOT NULL制約を設定する

ALTER TABLE 表名 MODIFY(列名 [CONSTRAINTS] 制約の名前] NOT NULL);

NOT NULL制約が設定された列にNULL値を入れると以下のようなエラーが出る。

行1でエラーが発生しました。:
ORA-01400: ("ORA01"."TB1"."COL1")にはNULLは挿入できません。