2012-04-03 15 views
0

私は最近、私がSeleniumテストを実行するために使ってきたテストサーバーデータベースを発見しました。python manage.py testserverで作成されたデータベースにアクセスするにはどうすればよいですか?

私はデータベースに奇妙な問題を抱えているので、それを調べたいと思っていました。

私はCtrl-Cを使用してサーバーを終了すると、これが表示されます。

^C 
Server stopped. 
Note that the test database, ':memory:', has not been deleted. You can explore it on your own. 

ただし、ファイルが作成されていない:

 
$ ls -la :memory 
ls: :memory: No such file or directory 

私はSQLite3のとDjango 1.3を使用しています。

テストデータベースにアクセスするにはどうすればよいですか?

答えて

3

これはdjangoのデフォルトエラーメッセージです。 SQLLiteは、データベース接続が閉じられるとすぐにメモリからデータベースを消去します。 docs

これが完了すると、ディスクファイルは開かれません。代わりに、新しいデータベースは純粋にメモリに作成された です。 データベース接続が閉じられると、すぐにデータベースが存在しなくなります。毎回:メモリ:データベースは別のものから です。したがって、それぞれが というファイル名 ":memory:"を持つ2つのデータベース接続を開くと、2つの独立したインメモリデータベースが作成されます。

ディスク上のデータベースに変更して問題を見つけ出したら、完了したら速度に戻します。

関連する問題