加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Flask 组件 SQLAlchemy

发布时间:2021-05-21 04:52:37 所属栏目:大数据 来源: https://blog.csdn.net/yilovex
导读:sqlAlchemy 简介: sqlAlchemy 相当于 Django 框架中 ORM,ORM 主要实现模型对象到关系数据库数据的映射 优点 只需要面向对象编程,不需要使用sql语言 实现数据模型和数据库的解藕,及不用关心是什么数据库,更改简单配置即可更换数据库 缺点 有部分性能损耗

sqlAlchemy 简介:

sqlAlchemy 相当于 Django 框架中 ORM,ORM 主要实现模型对象到关系数据库数据的映射

优点
  • 只需要面向对象编程,不需要使用sql语言

  • 实现数据模型和数据库的解藕,及不用关心是什么数据库,更改简单配置即可更换数据库

缺点
  • 有部分性能损耗

sqlAlchemy 使用

sqlAlchemy 的使用和 Django 中的类似,首先要进行配置数据库参数
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

from flask import Flask
from flask_sqlalchemy import sqlAlchemy


# 创建 app
app = Flask(__name__)

# 添加配置
app.config['sqlALCHEMY_DATABASE_URI'] = 'MysqL+MysqLdb://root:root@127.0.0.1:3306/flask_demo'
app.config['sqlALCHEMY_TRACK_MODIFICATIONS'] = True

# 创建 app
db = sqlAlchemy(app)
然后通过 ORM 进行建表
# ORM 建表类
class Article(db.Model):
    __tablename__ = 'article'
    id = db.Column(db.Integer,primary_key=True,autoincrement=True,)
    title = db.Column(db.String(100),nullable=False)
    content = db.Column(db.Text,nullable=False)


# 执行
db.create_all()
最后就是对 ORM 进行操作
# 增:
# 给字段赋值
article1 = Article(title='2',content='222')
# 添加
db.session.add(article1)
# 提交
db.session.commit()

# 删:
# 把要删除的数据查找出来
article1 = Article.query.filter(Article.title == '2').first()
# 删除
db.session.delete(article1)
# 提交
db.session.commit()

# 改:
# 把你要更改的数据查找出来
article1 = Article.query.filter(Article.title == '2').first()
# 修改
article1.title = 'New title'
# 提交
db.session.commit()

# 查:
# select * from article where article.title = '第一';
article1 = Article.query.filter(Article.title == '第一').first()
print('title:%s' % article1.title)
print('content:%s' % article1.content)

参考文章:

https://www.jianshu.com/p/b729e84fae4f
https://www.cnblogs.com/liangxiyang/p/11249946.html
https://blog.csdn.net/jlb1024/article/details/81515155

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读