Flask-sqlalchemy模块是什么?
Flask-SQLAlchemy 是一个 Flask 扩展,简化了在 Flask 程序中使用 SQLAlchemy 的操作。
SQLAlchemy 是一个很强大的关系型数据库框架,支持多种数据库后台。SQLAlchemy 提
供了高层 ORM,也提供了使用数据库原生 SQL 的低层功能。
配置数据库
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
# 指定数据库
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:redhat@localhost/UserTest'
# 不开启追踪修改
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
# 实例化对象
db = SQLAlchemy(app)
# 附加:当出现连接错误时的解决方法
import pymysql
pymysql.install_as_MySQLdb()
定义模型
class User(db.Model):
# 默认情况下,表的名称为类名,如果需要修改,则输入下面的命令:
# __tablename__==your table name # __tablename__为类变量定义数据库中使用的表名。
# db.Column 类构造函数的第一个参数是数据库列和模型属性的类型。
# db.Column 中其余的参数指定属性的配置选项。
id = db.Column(db.Integer, primary_key=True) # integer为普通整数,primay_key为主键,唯一
username = db.Column(db.String(30), unique=True, nullable=Flase) # unique=True 唯一不重复
password = db.Column(db.String(20), nullable=Flase) # nullable=False 为不能为空
email = db.Column(db.String(20), unique=True)
常用SQL列类型
常用SQL列属性![在这里插入图片描述](https://img-blog.csdnimg.cn/20190314133053155.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MDM3NDM4,size_16,color_FFFFFF,t_70)
单个数据表的创建以及增删改查
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
import pymysql
pymysql.install_as_MySQLdb()
app = Flask(__name__)
# 配置以及实例化
# 对数据库操作(mysql, redis)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:redhat@localhost/UserTest'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
# 实例化对象
db = SQLAlchemy(app)
# 定义数据库模型
# user ===