Apache Derby のすべてのテーブルを空にしたいと考えています。すべてのテーブルを削除するのではなく、その内容だけを削除します。テーブルには循環参照が含まれている可能性があるため、単純な DELETE ステートメントのセットでは、これを簡単に行うことはできません。
PostgreSQL/H2/Oracle では、参照整合性をオフにしてから、すべてのテーブルを切り捨てることができます。これは Derby では機能しないようです。
ヒントはありますか?
Apache Derby のすべてのテーブルを空にしたいと考えています。すべてのテーブルを削除するのではなく、その内容だけを削除します。テーブルには循環参照が含まれている可能性があるため、単純な DELETE ステートメントのセットでは、これを簡単に行うことはできません。
PostgreSQL/H2/Oracle では、参照整合性をオフにしてから、すべてのテーブルを切り捨てることができます。これは Derby では機能しないようです。
ヒントはありますか?
1 つの可能性は、データベース全体を削除してから、新しい空のデータベースを再作成し、データベース スキーマ (テーブル、インデックス、制約など) を再作成することです。
「dblook」などのツールを使用して、現在のデータベース スキーマを一連の SQL ステートメントとしてキャプチャし、新しいデータベースでスキーマを簡単に再作成できるようにします: http://db.apache.org/derby/docs/10.10 /tools/rtoolsdblookexamples.html