web-dev-qa-db-ja.com

Python経由でsqlite3を使用してテーブル名を取得する方法

Sqlite3データベースからデータを取得するのに問題があります。テーブルの名前とエンコーディングがわかりません。私がsqlitebrowserを介してDBを開いたとき、名前は単に判読できない文字でした。 DBへの接続は問題ありません。

conn = sqlite3.connect('my.db')
conn_cursor = conn.cursor()
conn.text_factory = str

しかし、どうすればテーブルの名前とそのエンコーディングを取得できますか?

11
krzyhub

このクエリを使用して、テーブル名を取得できます。

res = conn.execute("SELECT name FROM sqlite_master WHERE type='table';")
for name in res:
    print name[0]
22
Kenly