当前位置: 首页 > news >正文

站长统计 网站统计注册域名平台

站长统计 网站统计,注册域名平台,网站运营的作用,全中文软件开发工具Flask中一般使用flask-sqlalchemy来操作数据库。flask-sqlalchemy的使用介绍如下: 一、SQLAlchemy SQLALchemy 实际上是对数据库的抽象,让开发者不用直接和 SQL 语句打交道,而是通过 Python 对象来操作数据库,在舍弃一些性能开销…

Flask中一般使用flask-sqlalchemy来操作数据库。flask-sqlalchemy的使用介绍如下:

一、SQLAlchemy

  1. SQLALchemy 实际上是对数据库的抽象,让开发者不用直接和 SQL 语句打交道,而是通过 Python
    对象来操作数据库,在舍弃一些性能开销的同时,换来的是开发效率的较大提升。
  2. SQLAlchemy是一个关系型数据库框架,支持多种数据库后台。它提供了高层的 ORM 和底层的原生数据库的操作。flask-sqlalchemy
    是一个简化了 SQLAlchemy 操作的flask扩展。

备注:ORM 全拼Object-Relation Mapping. 称为对象-关系映射主要实现模型对象到关系数据库数据的映射.比如:把数据库表中每条记录映射为一个模型对象

二、flask-sqlalchemy安装

  1. 安装flask-sqlalchemy : pip install flask-sqlalchemy
  2. 如果连接的是 mysql 数据库,需要安装 flask-mysqldb或者pymysql 驱动。说明:pymysql 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使mysqldb。
pip install flask-mysqldb  #如果flask-mysqldb安装不上,安装pymysql
pip install pymysql
  1. 数据库连接设置

格式:mysql://<用户名>:<密码>@:<端口>/数据库名

如果安装pymysql ,需要这样连接数据库

mysql+pymysql://<用户名>:<密码>@:<端口>/数据库名

例如:

# 数据库链接地址
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:mysql@127.0.0.1:3306/test'
# 动态追踪修改设置,如未设置只会提示警告,此字段会增加了大量的开销,建议设置为False
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
#若要查看映射的sql语句,需要如下配置,此功能对调试有用,正式环境建议设置为False
app.config['SQLALCHEMY_ECHO'] = True

三、SQLAlchemy常用配置

1、sqlalchemy配置信息

在这里插入图片描述
2、SQLAlchemy字段类型及对应python中类型

在这里插入图片描述

备注:如果使用的是mysql数据库,则数据库中字段类型和python中数据类型对应关系

在这里插入图片描述

3、常用的SQLAlchemy列选项

在这里插入图片描述

4、常用的SQLAlchemy关系选项

在这里插入图片描述
四、数据库基本操作

在Flask-SQLAlchemy中,增删改查操作,均由数据库会话管理。
会话用 db.session 表示。在准备把数据写入数据库前,要先将数据添加到会话中然后调用 db.session.commit() 方法提交会话。提交操作把会话对象全部写入数据库。

在 Flask-SQLAlchemy 中,查询操作是通过 query 对象操作数据。
最基本的查询是返回表中所有数据,可以通过过滤器进行更精确的数据库查询。

1、查询过滤器

在这里插入图片描述

2、查询执行器方法

在这里插入图片描述

3、filter过滤条件

在这里插入图片描述

4、逻辑运算

在这里插入图片描述

5、DB操作

在这里插入图片描述

五.、完整流程举例

from flask import Flask
from flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)#设置连接数据库的URL
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:mysql@127.0.0.1:3306/test'app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
#查询时会显示原始SQL语句
app.config['SQLALCHEMY_ECHO'] = True
db = SQLAlchemy(app)
class Role(db.Model):# 定义表名__tablename__ = 'roles'# 定义列对象id = db.Column(db.Integer, primary_key=True)name = db.Column(db.String(64), unique=True)us = db.relationship('User', backref='role')#repr()方法显示一个可读字符串def __repr__(self):return 'Role:%s'% self.name
class User(db.Model):__tablename__ = 'users'id = db.Column(db.Integer, primary_key=True)name = db.Column(db.String(64), unique=True, index=True)email = db.Column(db.String(64),unique=True)password = db.Column(db.String(64))role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))def __repr__(self):return 'User:%s'%self.name
if __name__ == '__main__':app.run(debug=True)
http://www.yayakq.cn/news/139473/

相关文章:

  • 威海北京网站建设网站永久空间
  • seo网站架构设计宁波公司注册流程
  • 苏州制作企业网站公司wordpress编辑网站
  • 中建豪城建设有限公司网站公司牌子设计图
  • 做建站较好的网站珠海 网站建设
  • 营销型网站 案例成都商城类网站设计
  • 求职招聘网站开发网站名称 注册
  • 网站更改机房备案一个网站开发小组
  • 哈尔滨市建设工程信息网官方网站工程承包去哪个网站
  • wordpress仿站教程2018建设网站经验
  • 山西省三基建设办公室网站宝山区网站建设
  • 网站备案 暂住证社交网站的优点和缺点
  • 精仿手表网站android开发流程
  • 网站公司倒闭商丘做网站一般多少钱
  • 网页制作的过程企业网站优化链接
  • 网站带后台网站 在线支付功能
  • 做鼻翼整形整形的网站国内知名网站建设
  • 朱子网站建设微网站建设公司哪家好
  • 做爰全过程免费网站的视频教程濮阳市做网站
  • 泸州建设工程质量监督网站购物网站的建设
  • saas建站平台有哪些什么网站可以做微招聘
  • 国内比较高端的设计网站上海网站seo设计
  • 南县网页定制长沙谷歌seo
  • 长沙网站制作作平顶山市网站建设公司
  • 牟长青 做网站推广的四个基本要点域名注册网站
  • 唐山市住房和城乡建设局网站个人简历免费模板下载
  • 学做网站要多久多少钱免费下载app软件并安装手机
  • cakephp网站开发框架做网站素材图片
  • 做旅游网站的yi义乌做网站多少钱
  • 临淄区住房和城乡建设局网站wordpress 加载图片