下载包
下载flask/pymysql/flask_sqlalchemy三个包
初始化数据库
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import pymysql
from sqlalchemy.dialects.mysql import LONGTEXT
pymysql.install_as_MySQLdb()
app = Flask(__name__)
class Config(object):
"""配置参数"""
user = 'xxx'
password = 'xxx'
database = 'xxx'
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://%s:%s@127.0.0.1:3306/%s' % (user, password, database)
SQLALCHEMY_TRACK_MODIFICATIONS = True
app.config['SQLALCHEMY_ECHO'] = True
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = False
app.config.from_object(Config)
db = SQLAlchemy(app)
创建对象
class xxxx(db.Model):
__tablename__ = 'xxxx'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
...
在app.py中调用数据库操作
from flask import request
from mytools.mysqlinit import *
@app.route('/write')
def wtodatabase():
db.session.add(xxxx)
db.session.commit()
return "yes"
查询操作
过滤器 | 描述 |
---|
filter() | 过滤出符合括号内条件的记录,使用“类名.属性名”的方式,比较使用两个等号“==” |
filter_by() | 过滤出符合括号内条件的记录,使用“属性名”,比较使用一个等号“=” |
order_by() | 按括号内条件对记录排序 |
group_by() | 按括号内条件对记录分组 |
执行器 | 描述 |
---|
all() | 以list形式返回所有符合条件的记录 |
first() | 返回符合条件的第一条记录 |
get() | 返回指定主键的记录 |
count() | 返回符合条件的记录数量 |
xxxx.query.