Почему мои таблицы не отображаются в списке командой .table?

Я пытаюсь подключиться к базе данных SQLite через Flask-sqlalchemy. Я открыл командную строку, в которой сохранен файл dbconnect.py, содержащий from dbconnect import app, db,Connect и db.create_all(). Затем я открыл sqlite3.exe (там же, где находится файл Python) и выполнил db.connect и .tables.

Я ожидал, что таблица Connect появится в списке, но ничего не появилось. Однако я вижу данные в коде Visual Studio. Где я ошибаюсь?

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 - это универсальный язык программирования.


65
1

Ответ:

Решено

Используете ли вы команду .mode column? Документ командной строки

В Windows двойной щелчок sqlite3.exe открывает оболочку командной строки. чем в оболочке использовать точечные команды, например:

sqlite> .open c:\your_path\databasename.db # connect your existing database
sqlite> .tables # will show you the existing tables list.
sqlite> .mode column # set the table format for output
sqlite> select * from your_tablename;