投稿

ラベル(参照整合性制約)が付いた投稿を表示しています

10月30日(金)2コマ目

イメージ
今日、やったこと 参照整合性制約(外部キー制約) チェック制約 今日のホワイトボード 制約名の命名規則 制約名から「どのテーブル」に設定した、「どんな制約」かがわかるように。 図 制約名の命名規則 参照整合性制約(外部キー制約) 別テーブルの主キーを参照する列を外部キーと呼ぶ。この参照関係には以下が成り立たないとダメ。 外部キー列には参照先に存在するデータのみ登録可能 参照先が削除されると困る よって、参照関係を維持するために参照する側のテーブル(外部キーのあるテーブル)に参照整合性制約(外部キー制約)を設定する。 図 参照整合性制約 参照整合性制約(外部キー制約)の設定方法 列制約構文と表制約構文で異なるため注意!! 図 参照整合性制約の設定方法 この授業では参照整合性制約には制約名を指定する。そのため表制約構文で指定することになる。 テーブルの削除 参照整合性制約で参照される側のテーブル(親テーブル)は制約があるため、削除できない。削除するには子テーブル側の参照整合性制約を解除する必要がある。 参照される側テーブル(親テーブル)を削除するには以下の2種類がある。 ・さきに参照する側テーブル(子テーブル)を削除する 参照整合性制約は参照する側(子テーブル)側に設定してあるため、子テーブルを削除すると一緒に参照整合性制約も削除される。=>親テーブルも削除可能。 ・親テーブル削除時に「cascade constraints」オプションを指定する 一緒に子テーブルの参照整合性制約も削除される。 図 テーブルの削除 おまけ テーブル一覧を出力する 以下のSQLを実行すること。 SELECT table_name FROM user_tables;