0

私はJava Webアプリを持っています。プロジェクトルート(Eclipse)にある既存のsqliteデータベースを指す必要があります。

必要なドライバー/jar はすべて揃っています。

問題は、sqlite データベース テーブルから選択するコードが、新しく作成されたデータベースに対して実行されることです。テーブル "Table1" が存在しないというエラーが表示されます。これは、ルートにある既存の sqlite データベースを必要なテーブルとデータで使用するのではなく、新しいデータベースが作成されているためだと思います。

このローカルの sqlite データベースを強制的に使用する方法を知っている人はいますか?

4

1 に答える 1

1

SQLite docsによると、既存のデータベースが見つからない場合、デフォルトで新しいデータベースが作成されます。そのため、最も可能性の高い説明は、接続文字列のパスが既存のデータベースを指していないことです。

Web アプリの相対パスに関する質問を参照してください。Web アプリがサーブレットの場合は、ServletContext.getResourceを使用してデータベースへのパスを取得し、接続文字列で使用します。したがって、既存のデータベースが /WEB-INF にある場合:

ServletContext.getResource("/WEB-INF/my.db");
于 2013-02-01T18:00:58.037 に答える