Flask学习与项目实战5:通过SQLAlchemy连接数据库进行ORM模型的简单增删改查

SQLAlchemy介绍

是对于数据库的ORM的框架,直接操作模型,安装命令为pip install SQLAlchemy。

SQLAlchemy是一个独立的ORMR框架,可以独立于FLASK存在,也可以在Django中使用。

Flask-SQLAlchemy是对SQLAlchemy的一个封装,更适合在flask使用。

安装

输入命令:pip install flask-sqlalchemy

然后再输入命令:pip install pymysql 这个库是用来连接数据库的
在这里插入图片描述
在这里插入图片描述

from sqlalchemy import create_engine

# 数据库的配置变量
HOSTNAME = '127.0.0.1'
PORT     = '3306'
DATABASE = 'zhou'
USERNAME = 'root'
PASSWORD = 'nidemima'
DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8'.format(USERNAME,PASSWORD,HOSTNAME,PORT,DATABASE)

# 创建数据库引擎
engine = create_engine(DB_URI)

#创建连接
with engine.connect() as con:
    rs = con.execute('SELECT 1')
    print rs.fetchone()

在这里插入图片描述
其中track第14行代码是跟踪修改。这个可以设置的。(我不设置这个就不能正常运行,好像是py的新版本要求。)

创建数据库表及定义字段

通过方框内代码既可以进行ORM模型的使用,然后create_all()即可创建数据库表了。

#ORM模型
class Article(db.Model):
    __tablename__ = "article"
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    title = db.Column(db.String(200),nullable=False)
    content = db.Column(db.Text,nullable=False)

db.create_all()

在这里插入图片描述

增加

@app.route("/article")
def article_view():
    #id是自动增长的不需要设置 先建立一个对象 然后进行增加
    article = Article(title="洲的学习笔记",content="洲")
    db.session.add(article)
    #添加
    db.session.commit()
    #提交
    return  "操作成功"

在这里插入图片描述

增删改查

@app.route("/article")
def article_view():
        #1.增加数据  id是自动增长的不需要设置
        #article = Article(title="洲的学习笔记",content="洲")
        #db.session.add(article)
        #添加
        #db.session.commit()
        #提交
        #return  "操作成功"

        #2.查询数据
        #article = Article.query.filter_by(id=1)[0]
        #返回一个类列表的对象
        #print(article.title)

        #3.修改数据
        article = Article.query.filter_by(id=1)[0]
        article.content = "zhouzhou"
        db.session.commit()

        #4.删除数据
        article = Article.query.filter_by(id=1).delete()
        db.session.commit()

猜你喜欢

转载自blog.csdn.net/weixin_51484460/article/details/122641766