sqlite3接続オブジェクトを指定すると、sqlite3ファイルへのファイルパスをどのように取得できますか?Python Sqlite3 Sqlite接続パスを取得
7
A
答えて
10
sqlite connection object C source codeを確認したところ、その情報はではなく、であることがわかります。
あなたが接続開く前に、そのパスを保存する必要があります:
path = '/path/to/database/file.db'
conn = sqlite3.connect(path)
14
私たちは、プラグマdatabase_listコマンドを使用することができます。
cur = con.cursor()
cur.execute("PRAGMA database_list")
rows = cur.fetchall()
for row in rows:
print row[0], row[1], row[2]
第3パラメータ(row [2])は、データベースのファイル名です。 SQLiteエンジンには、さらに多くのデータベースが接続されている可能性があります。
$ ./list_dbs.py
0 main /home/user/dbs/test.db
2 movies /home/user/dbs/movies.db
上記は、Pythonコードを含むスクリプトの出力例です。
関連する問題