DROP の使い方
表などを消す
書き方
DROP TABLE [IF EXISTS] 表; DROP VIEW / DROP INDEX …
表そのものを消します(データも消える)。
よく使うオプション
| オプション | 意味 |
|---|---|
DROP TABLE 表 | 表をまるごと消す(データも消える) |
IF EXISTS | 無くてもエラーにしない |
CASCADE | その表を使うビューや外部キーも一緒に消す(PostgreSQL) |
DROP VIEW / DROP INDEX | ビュー / インデックスを消す |
例
DROP TABLE memos;DROP TABLEmemos 表を、中のデータごと消します。
DROP TABLE IF EXISTS tmp_report;NOTICE: table "tmp_report" does not exist, skipping
DROP TABLEあれば消し、無ければ何もしません。作り直しの前によく使う形です。
DROP VIEW IF EXISTS paid_orders;
ビューを消します。元の表のデータは消えません。
よくある間違い・注意
- DROP TABLE はふつう取り消せません(PostgreSQL ではトランザクションの中なら ROLLBACK で戻せます)。
- ほかの表から外部キーで参照されている表は、そのままでは消せません。CASCADE を付けると、参照している制約も消えます。
実際に打って練習する
SQL コースの Lv44「表を消す DROP TABLE」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜3 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。