首页 > 解决方案 > python, SQLite3 显示现有表和数据

问题描述

我得到了一个 .db 文件,该文件已经填充了表和数据。但是,尚未提供对数据库内容的描述。

有没有办法让我使用 SQLite3 和 python 检索列出不同表的单个列表以及它们各自的列集?

标签: python-3.xsqlite

解决方案


此代码帮助您显示带有键的表,当您获取表及其键时,您可以获得数据。

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())

推荐阅读