Kodrill

OSS-DB Silver / 基本的な運用管理作業 ・ 無料問題 4/5

基本的な運用管理作業 問題4[基本的な運用管理作業]

次の SQL を実行したときの結果として、正しいものを選んでください。

SQL
CREATE ROLE owner1;CREATE TABLE t (x integer);ALTER TABLE t OWNER TO owner1;DROP ROLE owner1;

選択肢

  • A.owner1 が所有するテーブルがあるので、DROP ROLE がエラーになる正解
  • B.owner1 が削除され、テーブル t は所有者のない状態で残る
  • C.owner1 が削除され、テーブル t の所有者は実行したロールに戻る
  • D.owner1 とテーブル t の両方が削除される

解説実行して確認済み

オブジェクトを所有しているロールは削除できず、「依存するオブジェクトがある」というエラー (SQLSTATE 2BP01) になります。削除するには、先に REASSIGN OWNED BY owner1 TO 別のロール; で所有者を移すか、DROP OWNED BY owner1; で所有するオブジェクトを削除してから DROP ROLE します。どちらもデータベースごとに実行します。

この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。

「基本的な運用管理作業」の要点を解説記事で読む

「基本的な運用管理作業」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。