2025年(令和7年) 春期 応用情報技術者 午前 問27

SQL文に示す参照制約が存在する“商品”表と“受注”とがある。 “商品”表の行を削除したとき、削除した行の商品コードをもつ“受注”表の行を自動的に削除するSQL文として、aに入る字句はどれか。

[SQL文]
 CREATE TABLE 商品 (
  商品コード CHAR(4) PRIMARY KEY,
  商品名   VARCHAR(64)
 )

[SQL文]
 CREATE TABLE 受注 (
  受注番号   INTEGER PRIMARY KEY,
  商品コード  CHAR(4),
  受注個数   INTEGER,
  納品日    CHAR(8),
  FOREIGN KEY (商品コード) REFERENCES 商品(商品コード)
  ON DELETE   a  
 )

 ア  CASCADE  イ  RESTRICT
 ウ  SET DEFAULT  エ  SET NULL


答え ア


解説

 ア  CASCADEは、参照先のデータの更新や削除に伴って、対応する参照元のレコードを削除するための指定です。(〇)
 イ  RESTRICTは、参照制約性が失われるような操作(更新や削除)の要求を禁止する指定です。(×)
 ウ  SET DEFAULTは、設定や状態が特に指定されていない場合に適用される標準値や初期設定の指定です。(×)
 エ  SET NULLは、指定のセル位置を NoData に設定する指定です。(×)


キーワード
・参照制約

キーワードの解説
  • 参照制約
    データベースで表のレコードの追加や削除、変更を行うときは、他の表との参照関係について確認する必要があります。
    外部キーとして他の表のデータ項目を参照する場合、レコードの追加を行うときは、外部キーが存在することを確認する必要があります。
    また、外部キーとして参照されている場合、削除や変更を行うときは、参照している表に不整合が発生しないようにする必要があります。

もっと、「参照制約」について調べてみよう。

戻る 一覧へ 次へ