DROP TABLE実行時の留意点
DROP TABLEの仕様
DROP TABLE実行時に以下のエラーが発生する場合があります。
1 2 3 4 5 |
dbadmin=> DROP TABLE schema1.table1; NOTICE 4927: The Projection table1_DBD_1_rep_dbd1213 depends on Table table1 ROLLBACK 3128: DROP failed due to dependencies DETAIL: Cannot drop Table table1 because other objects depend on it HINT: Use DROP ... CASCADE to drop the dependent objects too |
上記のエラーは、以下のいずれかに該当すると発生します。
対応方法
DROP TABLE文に「CASCADE」パラメータを付与すると、エラーが発生することなくテーブルを削除できます。
1 2 3 4 5 6 |
/*** 構文 ***/ DROP TABLE <スキーマ名>.<テーブル名> CASCADE; /*** 実行例 ***/ dbadmin=> DROP TABLE schema1.table1 CASCADE; DROP TABLE |
確認方法
テーブルが最適化されているか否かを確認するには、以下のSQLを実行します。最適化済みのテーブルが出力されます。
1 2 3 4 5 6 7 8 9 10 11 12 |
/*** 実行例 ***/ dbadmin=> SELECT projection_schema, anchor_table_name, projection_name dbadmin-> FROM projections dbadmin-> WHERE create_type <> 'DELAYED CREATION' dbadmin-> ORDER BY 1,2; projection_schema | anchor_table_name | projection_name -------------------+-------------------+------------------------------ SSBM | CUSTOMER | CUSTOMER_DBD_6_rep_comp_v1 SSBM | DATE1 | DATE1_DBD_9_rep_comp_v1 SSBM | LINEORDER | LINEORDER_DBD_10_rep_comp_v1 SSBM | PART | PART_DBD_7_rep_comp_v1 SSBM | SUPPLIER | SUPPLIER_DBD_8_rep_comp_v1 |
検証バージョンについて
この記事の内容はVertica 9.1で確認しています。- 投稿タグ
- DROP TABLE, テーブル削除