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()
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员洲洲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值