![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sqlalchemy
文章平均质量分 82
现在叫阿汤哥
人外有人,天外有天
展开
-
浅谈sqlalchemy层面删除及其注意事项!
我们知道sqlalchemy外键约束有4种,分别为:1、RESTRICT2、NO ACTION3、CASCADE4、SET NULL其默认为RESTRICT,也就是当父表数据被删除时,从表会拒绝删除。这一现象仅在数据库命令下有效,在ORM层面将会忽略、无视RESTRICT外键约束。下面我们就举例来演示一下先创建一个csscade_demo数据库,创建数据库cascade_d...原创 2018-06-13 12:08:53 · 4548 阅读 · 0 评论 -
alembic 如何使用?
在之前的数据库操作中,我们新增一个字段是不是每次都得删除数据库表,然后再重新将新创建的数据库表映射到数据库中。这样操作是不是很蛋疼?是吧?于是sqlalchemy作者拜尔为了解决这一问题,开发了alembic这一迁移工具。alembic 作用:方便数据库与ORM模型的迁移与映射。alembic 安装:pip install alembicalembic 用法:1、第一步...原创 2018-08-29 12:45:52 · 21090 阅读 · 2 评论 -
sqlalchemy query函数可用参数有哪些?
sqlalchemy query函数可用参数有哪些?一、模型名二、模型对象属性三、聚合函数名称 作用 func.sum 求和 func.max 求最大值 func.min 求最小值 func.count 求行数 func.avg 求平均值 下面就分别为大家讲讲query函数这三种参数的用法。在讲之前,我已经把数据库连接...原创 2018-08-11 17:22:57 · 6115 阅读 · 0 评论 -
sqlalchemy 常用数据类型有哪些?
sqlalchemy常用数据类型数据类型 python数据类型 说明 Integer int 整形 String str 字符串 Float float 浮点型 DECIMAL decimal.Decimal 定...原创 2018-08-09 16:45:47 · 28697 阅读 · 0 评论 -
sqlalchemy表关系之多对多
sqlalchemy表之间的关系有三种:1、多对多 2、一对多 3、一对一下面就讲讲sqlalchemy表之间如何建立多对多关系。 首先,我们把两个需要做多对多关系的模型定义出来,这里以Arctire,Tag模型为例(示例代码如下)class Arctire(Base): __tablename__ = "arctire" id = Column(Integer , prima...原创 2018-06-20 12:15:15 · 6959 阅读 · 4 评论 -
sqlalchemy 三种排序方式详解(上)
网站发布的文章想按发布时间最新排序,还有网站想按点击数量大小进行排序.......排序在网站开发项目中用的非常频繁。下面阿汤哥就为大家讲解下sqlalchemy 三种排序方式。老规矩,我们先定义一个Arctire模型(代码如下),并映射到数据库中。class User(Base): __tablename__ = "user" id = Column(Integer , primary...原创 2018-06-26 11:40:18 · 44158 阅读 · 13 评论 -
sqlalchemy 外键创建及四种外键约束
前面讲了那么多关于sqlalchemy相关知识,今天就为大家讲讲sqlalchemy外键创建及其四种外键约束。from sqlalchemy import create_engine,Column,Integer,String,Text,ForeignKeyfrom sqlalchemy.ext.declarative import declarative_basefrom sqla...原创 2018-06-19 11:53:53 · 7962 阅读 · 2 评论 -
sqlalchemy 表关系之一对一
今天我们就讲讲sqlalchemy最后一种关系:一对一 首先,我们先创建user(父表)、arctire(子表)两张表,代码如下:#父表class User(Base): __tablename__ = "user" id = Column(Integer , primary_key=True , autoincrement=True) name = Column(String...原创 2018-06-25 11:38:14 · 2899 阅读 · 0 评论 -
使用sqlalchemy对数据库表进行增删查改操作
上一节为大家讲解了“定义ORM模型,并将ORM模型映射到数据库中”,将ORM模型映射到数据库后,我们就可以对数据库表进行增删查改操作了。 from sqlalchemy import create_engine,Column,Integer,String from sqlalchemy.ext.declarative import declarative_base from sqlalche...原创 2018-06-16 10:48:23 · 19181 阅读 · 3 评论 -
定义ORM模型,并将ORM模型映射到数据库中
对象关系映射(Object Relational Mapping,简称ORM,翻译为中文为模型关系映射或者对象关系映射)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据。更多关于ORM知识介绍,大家可以访问ORM文档(http://docs.sqlalchemy.org/en/latest/core/tutorial.ht...原创 2018-06-15 17:07:42 · 1382 阅读 · 0 评论 -
sqlalchemy如何连接mysql数据库?
sqlalchemy是python知名的数据库管理框架,sqlalchemy独立于Flask而存在的,这是它与Flask-sqlalchemy不同之处。更多关于sqlalchemy方面的介绍,大家可以查阅sqlalchemy相关文档。 在使用sqlalchemy 之前、请确保你电脑安装了以下几款软件、包: 1、mysql数据库(个人比较推荐Navicat Premium) 2、pymysql...原创 2018-06-15 12:09:21 · 3071 阅读 · 4 评论 -
sqlalchemy limmit、offset及slice操作详解
在sqlalchemy中,如何使用limit 、offset 、slice(切片)呢?下面我就举例来讲讲这三种操作的用法。 老规矩,我们先创建一个模型(相信大家写这代码写的滚瓜烂熟了!)class Arctire(Base): __tablename__ = "arctire" id = Column(Integer , primary_key=True , autoinc...原创 2018-06-14 11:45:58 · 24100 阅读 · 0 评论 -
sqlalchemy 表关系之一对多
上节为大家讲解了sqlalchemy表关系之多对多,本文就为大家讲解sqlalchemy另外一种关系:一对一首先,我们先定义User模型及Arctire模型#父表class User(Base): __tablename__ = "user" id = Column(Integer , primary_key=True , autoincrement=True) name = Colu...原创 2018-06-21 14:30:34 · 2331 阅读 · 5 评论 -
alembic 常用命令有哪些?
上节为大家讲解了alembic如何使用?本节就为大家介绍一下alembic常用命令有哪些?alembic常用命令如下:在讲这些命令用法之前,我们先建立一个alembic_demo数据库然后再建立一个alembic_demo项目alembic_demo.py 文件代码如下:from sqlalchemy import create_engine,Column,Int...原创 2018-09-01 11:44:56 · 2451 阅读 · 0 评论