ServiceNow CSA 無料問題 7 / 10 ・ 分野5: Database Management and Platform Security
管理者が、既存テーブルを親クラスとしてフィールドを共有する子テーブルの設計を進めている。テーブルの拡張(extend)について正しい説明はどれか。
- テーブルは作成後でもいつでも拡張テーブルに変更できる
- 拡張できる親テーブルはTaskテーブルに限られる
- テーブルの拡張はテーブル作成時にのみ行える
- 拡張すると親テーブルのレコードは子テーブルへ移動する
正解と解説を見る
正解: C
正解の理由
テーブルの拡張は作成時にしか指定できない。後から拡張の構成に変えることはできない。拡張したものが子クラス、拡張元が親クラス、他を拡張していない親クラスが基底クラスと呼ばれる。
違う選択肢
「作成後でもいつでも拡張テーブルに変更できる」… 既にデータが入った状態で親子関係を作ると、既存レコードの扱いが定まらない。だから作成時に決める。
「拡張すると親テーブルのレコードが子へ移動する」… レコードは移動しない。子のレコードが親からも見える形になる。
「拡張できる親は Task に限られる」… どのテーブルでも親にできる。CMDB系は cmdb_ci を親とする別の階層を持つ。
押さえどころ
後から変えられないので、設計の段階で「既存を拡張するか、新規に作るか」を決めておく。