IPA過去問ドリル

平成21年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7

テクノロジ/データベース

次のSQL文の実行結果の説明として,適切なものはどれか。 CREATE VIEW 東京取引先 AS SELECT * FROM 取引先 WHERE 取引先.所在地 = '東京' GRANT SELECT ON 東京取引先 TO "8823"

出典:平成21年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7

正解:ア

解説

このSQL文は,取引先表のうち所在地が“東京”である行だけを取り出す“東京取引先”というビューを作成し,そのビューに対するSELECT権限をユーザ8823に付与しています。GRANTで権限を付与された8823のユーザは,このビューを通じて,所在地が“東京”の取引先の行を参照できるようになります。

選択肢ごとの解説

  • 正しい。GRANT文により,ユーザ8823に“東京取引先”ビューに対するSELECT権限が付与されるため,8823のユーザは所在地が“東京”の行を参照できるようになる。
  • 誤り。ビューの作成者は,通常,自分が作成したビューに対するSELECT権限を含む操作権限をもつため,このビューに対するSELECT権限をもたないという記述は誤りである。
  • 誤り。ビューは元になる実表を参照して動的に導出されるものであり,元の実表“取引先”が削除されると,そのビューは参照できなくなり,ビューに対する権限も意味をなさなくなる。
  • 誤り。ビュー(導出表)は実表のデータを検索するたびに導出される仮想的な表であり,あらかじめ決まった行数までしか記録できないという制限はない。
データベーススペシャリストの過去問を演習モードで解く