DROP VIEW はデータベースのビュー(view)を削除するためのSQL文です。
-- 構文ルール -- DROP VIEW (ビュー名); -- 例えばビュー名「employee_view」の場合は以下のように記述 DROP VIEW employee_view;
ビューはデータベース内の1つ以上のテーブルからデータを取得し、1つの仮想的なテーブルとして扱う機能です。ビューはテーブルと同じようにクエリを発行することができますが、実際のデータを保持していないため、データの変更や削除などの影響を受けません。
そもそもビューって何?という方はこちらの記事もあわせてご覧ください。
このページではDROP VIEWの使い方・注意点をサンプルコード付きで解説します。
システムエンジニアであれば知らないと恥ずかしい超・基本知識の1つです。是非最後までご覧ください。
DROP VIEW(ビューの削除)の使い方
DROP VIEW (ビュー名);
削除したいビューを指定するだけ。使い方はとっても簡単です。
'sampleview' というビュー定義を削除するDROP VIEW文のサンプルがこちら↓。
-- テーブル/ビューの一覧 show tables; +--------------------+ | Tables_in_sampledb | +--------------------+ | allpointlist | | attendancehistory | | attendancehistoryb | | avg_pointlist | | classmember | | mathpointlist | | memberlist_a | | memberlist_b | | pointlist | | sampleview |←削除対象 | subpointlist | | tbl_a | | tbl_b | +--------------------+ -- DROP VIEW の実行 DROP VIEW sampleview; -- sampleview が削除されたことを確認 show tables; +--------------------+ | Tables_in_sampledb | +--------------------+ | allpointlist | | attendancehistory | | attendancehistoryb | | avg_pointlist | | classmember | | mathpointlist | | memberlist_a | | memberlist_b | | pointlist | | subpointlist | | tbl_a | | tbl_b |
構文自体は非常に簡単です。利用する際の注意点だけ一緒に解説しておきます。
DROP VIEW の注意点
実際にデータを格納する物理的なテーブルとは異なり、ビューは仮想的なテーブルであるためデータそのものを保持しません。
そのため、DROP TABLE とは異なりデータベースからデータを消してしまうということはないので、その点安心な操作ではあります。
しかし、ビューを利用している他のオブジェクト(トリガーやストアドプロシージャなど)がある場合、これらのオブジェクトがビューを参照できなくなるため、注意が必要です。
また、ビューを削除するとビューに対する特権も削除されます。
例えば、ビューにSELECT権限を付与したユーザーがいる場合、ビューを削除するとそのユーザーはビューにアクセスできなくなります。したがって、ビューを削除する前に、そのビューに対する特権が削除されていないか確認することが重要です。
SQLを1から学習したい方は
SQLやデータベースの仕組みを1から学習したい方(学び直したい方)向けに、現役エンジニア達のスキルを結集して 完全無料 のSQL教材を作成しました。
SQLは決して難しい技術ではないので、エンジニアであれば「当たり前のように」扱えて当然かも・・・?
とはいえ、案外SQLをちゃんと使ったことがない人も多いはずです。この機会に是非一度ご覧になってみてください。