Flask-SQLAlchemy 数据库与表管理

  • Flask-SQLAlchemy 数据库连接的配置
    app.config['SQLALCHEMY_DATABASE_URI'] =
     'mysql+pymysql://username:password@host:port/database'

  • 创建数据库表 db.create_all()
  • 删除数据库表 db.drop_all()

例子

# 导入 flask 和 flask_sqlalchemy
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import *

# 实例化flask
app = Flask(__name__)
# 进行数据库的配置
# 数据库的用户名
username = "root"
# 数据库的密码
password = "123456"
# 数据库的ip:数据库端口
server = "x.x.x.x:3366"
# 数据库名
db="xixi"
app.config['SQLALCHEMY_DATABASE_URI'] = \
    f"mysql+pymysql://{username}:{password}@{server}/{db}?charset=utf8"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
# SQLAlchemy 绑定app

例子

import yaml
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
# 实例化app 对象
from sqlalchemy import *

app = Flask(__name__)
with open("./data.yml") as f :
    result = yaml.safe_load(f)
    username = result.get("database").get('username')
    password = result.get("database").get('password')
    server = result.get("database").get('server')
    db = result.get("database").get('db')
app.config['SQLALCHEMY_DATABASE_URI'] = \
    f"mysql+pymysql://{username}:{password}@{server}/{db}?charset=utf8"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
# SQLAlchemy 绑定app
db = SQLAlchemy(app)

# 定义数据库的表 需要继承 db.Model,db 为 app 启动的时的 SQLAlchemy 绑定的实例
class User(db.Model):
    id = Column(Integer, primary_key=True)
    username = Column(String(80))

if __name__ == '__main__' :
    db.create_all()

你可能感兴趣的:(数据库,flask,python)