如何创建Sqlite3数据库和表

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

我正在尝试使用 python 和 Flask 创建一个网络应用程序。

我已经完成了路由部分,现在我正在尝试建立一个 Sqlite3 数据库来存储用户信息。

以下是我的代码。

from flask import Flask, render_template, redirect, request

import sqlite3
from flask_sqlalchemy import SQLAlchemy
from flask_login import UserMixin

from flask_login import LoginManager
login_manager = LoginManager()

app = Flask(__name__)
#To connect the database with the app
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///tekken.db'

db = SQLAlchemy(app)

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), nullable=False)
    email = db.Column(db.String(20), nullable=False)
    password = db.Column(db.String(80), nullable=False)

我保存了代码并在终端中打开了 Flask shell,然后运行了以下命令。

db.create_all()

运行命令后,我打开另一个终端窗口并运行以下命令。

sqlite 3 铁拳.db .表格;

但是,它显示“错误:在准备中,靠近“表”:语法错误(1)”,并且似乎从未创建过用户表。

我的代码中缺少什么?

python sqlite flask sqlite3-python
1个回答
0
投票

为了调试此问题,请打开终端并运行

sqlite3 tekken.db
以打开 sqlite cli。然后运行
.tables
。 这应该会显示您拥有的数据库列表。 如果您看不到
User
模型,则表示存在错误。

然后运行 Flask 应用程序并再次打开 Flask shell 并再次运行

db.create_all()
。这次检查 Flask 应用程序日志,看看是否可以看到任何错误

© www.soinside.com 2019 - 2024. All rights reserved.