Oracle 質問総合スレ10
■ このスレッドは過去ログ倉庫に格納されています
0533525
2014/12/06(土) 10:15:46.74ID:???テーブルをTRUNCATEする場合、DROP TABLE できる権限が必要です。
つまり TRUNCATE は DDL であり、DROP TABLE と同レベルだと考えて下さい。
>処理の中で、一旦テーブル自体が消えているのでしょうか?
>テーブルは残ってて、でもselect処理が見に行く領域にはテーブルは無くなる?
>それとも、エラー08103がいうオブジェクトというのは、テーブルではなく、レコードの事も指す?
厳密には違いますが、この中で一番近しいのは1番目でしょうか。
(DROP TABLE 権限が必要なため)
DLL の TRUNCATE ではなく、DML の DELETE 文を使うことは出来ませんか?
そもそも SELECT されることが分かっている状態で TRUNCATE を実行することが間違いです。
(TRUNCATE を DROP に置き換えて考えてみて下さい。
SELECT 中に テーブルが DROP されたら、そりゃオブジェクトがなくなりますよね)
■ このスレッドは過去ログ倉庫に格納されています