SQL dev に、すべてのデータを消去したいテーブルがあります。約 90,000 行以上あります。テーブルではなくデータを削除したいだけです。
DELETE *、TRUNCATE など、試したことはすべてうまくいきませんでした。出くわし続ける
ORA-00054: リソースがビジーで、NOWAIT を指定して取得するか、タイムアウトになりました
エラー
SQL dev に、すべてのデータを消去したいテーブルがあります。約 90,000 行以上あります。テーブルではなくデータを削除したいだけです。
DELETE *、TRUNCATE など、試したことはすべてうまくいきませんでした。出くわし続ける
ORA-00054: リソースがビジーで、NOWAIT を指定して取得するか、タイムアウトになりました
エラー
おそらく、切り捨てまたは削除の構文が正しくありませんか?次のいずれかを実行したときに表示されるエラーメッセージは何ですか。
TRUNCATE TABLE [TableName]
また
DELETE FROM [TableName]
ORA-00054の更新
このエラーは、テーブルが別のセッションのクエリによってロックされていることを意味している可能性があります。このエラー番号に関連する次のSOの質問と受け入れられた回答を参照してください。
ORA-00054:リソースがビジーで、NOWAITが指定されているか、タイムアウトが期限切れになっています。
参考までに-そのようなエラー番号は通常、人間にはあまり意味がありませんが、検索エンジンやSOのようなサイトで詳細を検索する場合は金色になる可能性があります。
私はSQL Developerにはあまり詳しくありませんが、トランザクションを有効にしている場合、発行したコマンドの効果を永続的にしたい場合は、必ずトランザクションをCOMMITしてください。
DELETE FROM table_name
この投稿は、問題を解決するのに大いに役立つようです。私が見ているように、あなたはオラクルのエラーを扱っています:
http://www.bluegecko.net/oracle/ora-00054-resource-busy-and-acquire-with-nowait-specified/
また、特定のロックを回避する方法についても説明します。