为什么 .table 命令没有列出我的表?

问题描述 投票:0回答:1

我正在尝试通过 Flask-sqlalchemy 建立 SQLite 数据库连接。我打开了一个命令提示符,其中保存了 dbconnect.py,其中包含

from dbconnect import app, db,Connect
db.create_all()
。然后我打开 sqlite3.exe(与 Python 文件相同的位置)并执行
db.connect
.tables

我期待列出连接表,但什么也没发生。不过我可以在 Visual Studio Code 中看到数据。我哪里错了?

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///db.connect'
db = SQLAlchemy(app)

class Connect(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    name = db.Column(db.String(20),nullable = False)

with app.app_context():
    db.create_all()
    entry = Connect(name = "Apple")
    db.session.add(entry)
    db.session.commit()
    dbdata = Connect.query.all()
    print(dbdata[0])


if __name__ == '__main__':
    app.run(debug = True)
python sqlite flask flask-sqlalchemy
1个回答
0
投票

您使用

.mode column
命令吗? 命令行文档

在 Windows 上双击 sqlite3.exe 打开命令行 shell 比在壳里

sqlite> .open c:\path\databasename.db
sqlite> .tables # will show you the existing tables list.
sqlite> .mode column # shows you the table format
sqlite> select * from your_table;
© www.soinside.com 2019 - 2024. All rights reserved.