python-3.x - python, SQLite3 显示现有表和数据
问题描述
我得到了一个 .db 文件,该文件已经填充了表和数据。但是,尚未提供对数据库内容的描述。
有没有办法让我使用 SQLite3 和 python 检索列出不同表的单个列表以及它们各自的列集?
解决方案
此代码帮助您显示带有键的表,当您获取表及其键时,您可以获得数据。
import sqlite3
def readDb():
connection = sqlite3.connect('data.db')
connection.row_factory = sqlite3.Row
cursor = connection.cursor()
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
rows = cursor.fetchall()
tabs=[]
for row in rows:
for r in row:
tabs.append(r)
d={}
for tab in tabs:
cursor.execute("SELECT * FROM "+tab+";")
rows = cursor.fetchone()
t=[]
for row in rows.keys():
t.append(row)
d[tab]=t
connection.commit()
return d
print(readDb())