7、flask-mysql

学习开始的前提是本地已经安装mysql并创建了一个名为flask_data的数据库

一、安装三方库

pip install flask-sqlalchemy
pip install pymysql

二、创建数据库表

from flask import Flask, request, abort
# 导入相关库
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
# 创建数据库的实例对象
db = SQLAlchemy(app)  # 第一种实例化方式
"""# 第二种实例化方式
db = SQLAlchemy()
db.app = app
db.init_app(app)
"""

# 配置数据库
host_name = '127.0.0.1'
port = 3306
user_name = 'root'
password = '123456'
database = 'flask_data'
app.config['SQLALCHEMY_DATABASE_URI'] = fr'mysql+pymysql://{user_name}:{password}@{host_name}:{port}/{database}?charset=utf8mb4'


# 创建数据库模型
class User(db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(20), unique=True)
    email = db.Column(db.String(30), unique=True)


# 创建表, 这里有一个特别注意的地方:初始化数据库表之后,如果后面修改了数据库模型,这里是不会被删除和添加的, django的数据库模块是可以的
db.create_all()


# 可以使用下述代码测试连接是否成功, 如果连接成功,会输出(1,)
with app.app_context():
    with db.engine.connect() as conn:
        rs = conn.execute('select 1')
        print(rs.fetchone())


@app.route('/')
def root():
    return hello


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

这里有一个需要特别注意的,注释里也提到了:创建表之后,如果后期修改了数据库模型,则已创建数据库表不会跟着一起变更,之前学习过django是支持的

然后使用下述命令查看表是否创建成功

# 连接数据库,回车后需要输入密码再回车一下才能连接成功
mysql -uroot -p

# 查看有当前有哪些数据库
show databases;

# 使用自己创建的那个数据库,我创建的数据库名为flask_data
use flask_data;

# 查看当前选择的数据库下有哪些表
show tables;

# 查看users表的字段有哪些
show columns from users;

结果如下:

当然,也可以使用可视化的数据库工具查看表是否创建成功,这里不进行叙述

三、增删改查

1、增加

2、修改

3、查询

4、删除

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • [TOC] MySQL 学习笔记(一)[https://www.jianshu.com/p/dde13bbe0fd...
    Whyn阅读 3,138评论 0 0
  • 数据库概念 定义1 数据库(database)是按照数据结构来组织、存储、管理数据的建立在计算机存储设备上的仓库 ...
    好好秦先生阅读 4,868评论 0 3
  • 数据库 1.数据库(Database):就是一个存放数据的仓库,而这个仓库是按照一定的数据结构(数据结构是指数据的...
    江__不去猜阅读 3,375评论 0 1
  • 1.创建数据库配置文件 2.初始化数据库对象。 导入sqlalchemy,配置文件 3.数据库模型与表映射。 模型...
    Margolu阅读 9,922评论 0 4
  • 什么是数据库 数据库在通常意义上被认为是保存有组织的数据的容器(通常是一个文件或一组文件)。数据库和数据库管理系统...
    703fd4dc1019阅读 3,841评论 0 0

友情链接更多精彩内容