from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
# 设置数据库的连接地址
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql://root:mysql@127.0.0.1:3306/test21"
# 是否监听数据库变化 一般不打开, 比较消耗性能
app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False
# 会在控制台中显示底层执行的sql语句
app.config["SQLALCHEMY_ECHO"] = True
# 创建数据库操作对象(建立了数据库连接)
db = SQLAlchemy(app)
# 类->表 属性->字段 对象->记录
class User(db.Model):
__tablename__ = "users" # 设置表名 默认为类名小写
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(48), unique=True)
@app.route('/')
def index():
"""增加数据"""
user = User(name="zs") # 主键不用手动设置, 当数据库生成该记录时, 会自增主键
# user.name = "zs"
# 对象添加到会话中
db.session.add(user)
# 提交会话 如果不提交,数据库不会更新
db.session.commit()
"""修改数据"""
user.name = "ls"
db.session.commit()
# """删除数据"""
# db.session.delete(user)
# db.session.commit()
return "index"
if __name__ == '__main__':
# 会删除所有继承db.Model的表
db.drop_all()
# 会创建所有继承自db.Model的表
db.create_all()
app.run(debug=True)