使用Flask创建MySQL数据库

Flask是一个轻量级的Python Web框架,它的简洁性和灵活性使得它成为开发Web应用的首选工具之一。结合MySQL数据库,可以实现功能强大的Web应用。本文将介绍如何使用Flask创建一个MySQL数据库,并进行简单的数据操作。

准备工作

在开始之前,我们需要确保已经安装了Flask和MySQL数据库。如果没有安装,可以通过以下命令进行安装:

pip install Flask
pip install pymysql

创建Flask应用

首先,我们创建一个简单的Flask应用,用于连接MySQL数据库。在项目目录下新建一个app.py文件,编写如下代码:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@localhost/db_name'
db = SQLAlchemy(app)

if __name__ == '__main__':
    app.run()

在上面的代码中,我们导入了Flask和SQLAlchemy模块,并配置了MySQL数据库的连接信息。需要将usernamepassworddb_name替换为实际的数据库用户名、密码和数据库名称。

创建数据库模型

接下来,我们定义一个数据模型,用于操作数据库表。在app.py文件中添加以下代码:

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

    def __repr__(self):
        return '<User %r>' % self.username

上面的代码定义了一个User类,表示用户表。其中id为主键,usernameemail分别为用户名和邮箱。

初始化数据库

在Flask应用中,我们需要初始化数据库,创建对应的表结构。可以在app.py文件中添加以下代码:

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

运行以上代码后,会自动创建名为db_name的数据库,并在其中创建一个User表。

数据操作

现在我们可以进行数据操作了。例如,向用户表中插入一条数据:

user = User(username='test', email='test@example.com')
db.session.add(user)
db.session.commit()

查询所有用户数据:

users = User.query.all()
for user in users:
    print(user.username, user.email)

流程图

flowchart TD;
    A(准备工作) --> B(创建Flask应用);
    B --> C(创建数据库模型);
    C --> D(初始化数据库);
    D --> E(数据操作);

总结

通过本文的介绍,我们学习了如何使用Flask创建一个MySQL数据库,并进行简单的数据操作。Flask提供了强大的功能和灵活性,使得开发Web应用变得更加简单和高效。希望本文对你有所帮助,如果有任何疑问或建议,欢迎留言讨论。