SQLにおけるドメインに関する記述【午前2 解説】
要点まとめ
- 結論:ドメインの定義にはCREATE文、削除にはDROP文を用いるのが正しい。
- 根拠:SQL標準ではドメインはユーザー定義型としてCREATE DOMAIN文で作成し、DROP DOMAIN文で削除する。
- 差がつくポイント:ドメインは基底表の定義に必須ではなく、基底表に複製されず、名前はデータベース内で一意でなければならない点を理解すること。
正解の理由
選択肢イは「ドメインの定義にはCREATE文、削除にはDROP文を用いる」と述べています。これはSQL標準の仕様に合致しており、ドメインはCREATE DOMAIN文で定義し、DROP DOMAIN文で削除します。ドメインはデータ型の一種であり、再利用可能な型として利用されるため、専用のCREATE/DROP文が用いられます。
よくある誤解
ドメインは基底表(テーブル)を定義する際に必須だと誤解されがちですが、実際は任意です。また、ドメイン名はデータベース内で一意でなければならず、複数のドメインで同じ名前を使うことはできません。
解法ステップ
- ドメインの定義方法を確認する(CREATE DOMAIN文があるか)。
- ドメインの削除方法を確認する(DROP DOMAIN文があるか)。
- 基底表の定義にドメインが必須かどうかを理解する。
- ドメインの名前の一意性について考える。
- 選択肢の記述とSQL標準の仕様を照合する。
選択肢別の誤答解説
- ア: 「基底表を定義するにはドメインの定義が必須」とあるが、ドメインは任意であり必須ではない。
- イ: 正解。CREATE文で定義し、DROP文で削除するのが正しい。
- ウ: 「ドメインの定義は基底表内に複製される」とあるが、ドメインは独立した型であり複製されない。
- エ: 「ドメイン名はデータベース内で一意である必要はない」とあるが、ドメイン名は一意でなければならない。
補足コラム
ドメインはSQLでユーザーが独自に定義できるデータ型の一種で、例えば「電話番号」や「郵便番号」など特定の形式や制約を持つデータ型を作成できます。これにより、複数のテーブルで同じ型を使い回し、一貫性を保つことが可能です。CREATE DOMAIN文では型の指定に加え、制約(CHECK制約など)も設定できます。
FAQ
Q: ドメインを使うメリットは何ですか?
A: データ型の再利用性が高まり、制約を一元管理できるため、データの整合性が向上します。
Q: ドメインはどのようにテーブルで利用しますか?
A: テーブルのカラム定義で、通常のデータ型の代わりにドメイン名を指定して利用します。
関連キーワード: SQL, ドメイン、CREATE DOMAIN, DROP DOMAIN, データ型、制約、ユーザー定義型