削除権限

更新日:

用語解説

削除権限は、データベースの表からDELETE文で行を削除することを許可するオブジェクト権限です。列だけを消す権限ではなく、条件に一致した行全体が削除対象になります。

■ 試験で押さえるポイント

  • GRANT DELETE ON 表 TO 利用者又はロールで付与し、REVOKEで取り消します。通常、DELETEにはINSERTのような列単位権限はありません。

  • WHERE句を省略したDELETEは表の全行を対象とするため、件数確認、トランザクション、バックアップ、レビューなどで誤操作を防ぎます。

  • 外部キーで参照される親行はRESTRICTで拒否され、CASCADEなら子行も連鎖削除されるなど、参照動作に従います。権限があっても制約は有効です。

  • DELETEは条件付きで行を処理し通常ログへ記録します。表領域をまとめて初期化するTRUNCATEは別命令・別権限として扱うDBMSがあります。

■ 選択肢での判断ポイント

行削除=DELETE権限、表定義削除=DROP権限、全行高速除去=TRUNCATE権限を区別します。DELETE権限だけで表そのものは削除できません。

例: DELETE FROM 注文 WHERE 保存期限<DATE '2020-01-01'は古い行を削除します。WHEREを外すと全注文行が対象になるため、同じ削除権限でも影響範囲が大きく変わります。

同じ分野の用語