flask_sqlalchemy连接Mysql数据库

【注】 1、由于是建立的flask项目,所以不能直接点绿色按钮运行,如图: 2、应该在terminal终端中运行python myfile.py,并且在main函数不能加 app.run(),否则不能成功执行,如图: 具体代码如下:

#requirements.txt
Flask==1.1.2
flask_sqlalchemy==2.4.4
PyMySQL==0.10.0
from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)


class Config(object):
    """配置参数"""
    # 设置连接数据库的URL
    user = root
    password = lff12345
    database = my_db
    app.config[SQLALCHEMY_DATABASE_URI] = mysql+pymysql://%s:%s@127.0.0.1:3306/%s % (user, password, database)

    # 设置sqlalchemy自动更跟踪数据库
    SQLALCHEMY_TRACK_MODIFICATIONS = True

    # 查询时会显示原始SQL语句
    app.config[SQLALCHEMY_ECHO] = True

    # 禁止自动提交数据处理
    app.config[SQLALCHEMY_COMMIT_ON_TEARDOWN] = False


# 读取配置
app.config.from_object(Config)

# 创建数据库sqlalchemy工具对象
db = SQLAlchemy(app)


class User(db.Model):
    # 定义表名
    __tablename__ = users
    # 定义字段
    name_id = db.Column(db.String(32), unique=True, primary_key=True)
    balance = db.Column(db.DECIMAL(38, 2))

    def __int__(self, name_id, balance):
        self.name_id = name_id
        self.balance = balance


def add(name_id, balance):
    """
    增加数据
    :param name_id: 用户名
    :param balance: 余额
    :return:
    """
    user = User(name_id=name_id, balance=balance)
    db.session.add(user)
    db.session.commit()


if __name__ == __main__:
    # app.run(debug=True)
    # 创建所有表
    db.create_all()
    add(user001, 1234.12)
    add(user002, 1111.15)
    add(user003, 2134.54)
    add(use, 1234.12)
    add(use * 10 + ab, 1234.12)
经验分享 程序员 微信小程序 职场和发展