平成25年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7
テクノロジ/データベースSQLにおけるドメインに関する記述のうち,適切なものはどれか。
出典:平成25年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7
- ア基底表を定義するには,ドメインの定義が必須である。
- イドメインの定義にはCREATE文,削除にはDROP文を用いる。
- ウドメインの定義は,それを参照する基底表内に複製される。
- エドメイン名は,データベースの中で一意である必要はない。
正解:イ
解説
SQLにおけるドメインとは,列がとり得る値の集合(データ型や制約)に名前を付けて定義したものであり,CREATE DOMAIN文によって定義し,DROP DOMAIN文によって削除する。ドメインは複数の基底表の複数の列から参照でき,一種の再利用可能な型定義として機能する。
選択肢ごとの解説
- ア誤り。ドメインの定義は基底表を定義するための必須条件ではない。列の定義には,ドメインを指定する代わりに,データ型を直接指定することもできる。
- イ正しい。ドメインの定義にはCREATE DOMAIN文を用い,不要になったドメインの削除にはDROP DOMAIN文を用いる。
- ウ誤り。ドメインの定義は,データベース内の一つの実体として管理され,それを参照する基底表の列はそのドメインを参照するだけであり,ドメインの定義内容が基底表内に複製されるわけではない。
- エ誤り。ドメイン名は,他の名前付きオブジェクトと同様に,スキーマ(データベース)の中で一意でなければならない。