sqlalchemy相关内容

SQLAlchemy - 用于测试的 SQLite 和用于开发的 Postgresql - 如何移植?

我想在我的所有测试中使用 sqlite 内存数据库,在我的开发/生产服务器上使用 Postgresql. 但是两个数据库中的 SQL 语法并不相同.例如:SQLite 有自动增量,而 Postgresql 有串行 将 SQL 脚本从 sqlite 移植到 postgresql 是否容易...您的解决方案是什么? 如果您要我使用标准 SQL,我应该如何在两个数据库中生成主键? ..
发布时间:2021-12-30 14:54:37 数据库

SELECT * 语句中的列顺序 - 保证?

我正在使用 ORM (sqlalchemy) 从 PG 数据库中获取数据.我想避免在我手工编写的 SQL 语句中指定所有表列名*. 到目前为止,我的假设是返回的列按照用于创建 db 表的 DDL 语句的顺序排列.到目前为止,这是有效的 - 但我想知道这是否只是运气,或者是否在 (ANSI) SQL 规范中专门解决了这个问题. 即ANSI SQL(也可能是数据库)是否保证 SELECT ..
发布时间:2021-12-30 14:54:04 其他开发

PostgreSQL ILIKE 查询与 SQLAlchemy

我想运行一个查询,选择所有标题与 '%' + [some_phrase] + '%' 匹配的帖子,不区分大小写.也就是说,选择标题中包含一些短语的所有行,不区分大小写.根据我所做的研究,看起来我需要使用 Postgres 的 ILIKE 查询来匹配不区分大小写的.如何使用 SQLAlchemy 执行这样的查询? class Post(db.Model):id = db.Column(db.Int ..
发布时间:2021-12-30 14:53:31 Python

将 SQL 转换为 SQL 炼金术

我是 Flask SQl 炼金术的新手;虽然我知道炼金术抽象了 sql 语法并在创建模型时使事情变得容易;有时我们希望以非常具体的方式在前端可视化数据. 我有以下查询,我想使用 alchemy 使用 session.query 和过滤器以及可能的分组. 我的查询内容如下: mysql> SELECT status, COUNT(id) FROM bar_baz where not ..
发布时间:2021-12-30 14:53:25 数据库

具有动态表模式的 SQLAlchemy ORM

我试图让 SQLAlchemy ORM 创建类 Field 来描述我的数据库中的所有字段: from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()类字段(基础):__tablename__ = '字段'__table_args__ = {'schema':'SCM'}id = 列(字符串(2 ..
发布时间:2021-12-30 14:53:18 Python

SQLAlchemy 列到行转换,反之亦然——这可能吗?

我正在寻找一种仅用于 SQLAlchemy 的解决方案,用于将从表单提交中收到的 dict 转换为数据库中的一系列行,每个提交的字段对应一个行.这是为了处理在应用程序中差异很大的首选项和设置.但是,它很可能适用于创建类似功能的数据透视表.我已经在 ETL 工具中看到过这种类型的事情,但我正在寻找一种直接在 ORM 中执行此操作的方法.我找不到关于它的任何文档,但也许我错过了一些东西. 示例: ..
发布时间:2021-12-30 14:53:01 Python

在 SELECT 查询后进行 SQLAlchemy COMMIT 而不是 ROLLBACK

我正在与合作伙伴一起开发应用.我负责数据库部分 (PostgreSQL),我的合作伙伴使用 SQLAlchemy 在带有 python 的网络服务器上实现了该应用程序.我们大量使用存储过程.在数据库日志中对其中之一的 SELECT 查询如下所示: SET TRANSACTION ISOLATION LEVEL READ COMMITTED;SELECT col_a, col_b FROM f_s ..
发布时间:2021-12-30 14:52:53 Python

Flask-SQLAlchemy 小写索引 - 跳过功能,SQLAlchemy 反射不支持

首先.抱歉,如果有人回答了这个问题,但我在任何地方都找不到答案. 我需要在 Flask-SQLAlchemy 对象上定义一个小写索引. 我遇到的问题是我需要将模型用户名和电子邮件字段存储为小写,以便我可以使用 User.query.filter(func.lower(username) == func.lower(username) 检查它们).first() 到目前为止,我一直 ..
发布时间:2021-12-30 14:52:45 Python

将 SQLAlchemy ORM 用于非主键、唯一、自动递增的 id

当我运行以下代码时,我希望 first_name 和 last_name 是复合主键,而 id 是该行的自动递增索引,但不充当主键,因为有信息在表格的其余部分是我需要定义它的唯一性,而不是给定的 ID. Base = declarative_base()会话 = sessionmaker(绑定 = db)会话 = 会话()类人(基础):__tablename__ = "人"id = Column ..
发布时间:2021-12-30 14:52:35 数据库

一对多 Flask |SQLAlchemy

我正在尝试使用 Flask 和 SQLAlchemy 创建一对多关系. 我希望一对多的关系是这样的: “对于任何一部电影,可以有多个角色" 这是我到目前为止所拥有的,但它现在以一对一的形式保存在我的数据库中.(一部电影对一个角色,多个角色在DB中多次保存) 类电影(db.Model):__tablename__ = "电影"id = db.Column('movies_id', ..
发布时间:2021-12-30 14:52:05 Python

使用 sqlalchemy 和 postgresql 编码错误

我将金字塔用于带有 postgres 数据库、wtforms、sqlalchemy 和 jinja2 的 Web 应用程序,当应用程序尝试从数据库中获取问题类型以使用 wtforms 填充选择字段时出现此错误: 错误:“ascii"编解码器无法解码位置 5 中的字节 0xc3:序号不在范围内(128) 这是model.py中的问题类型表: class Mixin(object):id = C ..
发布时间:2021-12-30 14:51:41 Python

如何使用 make_transient() 复制 SQLAlchemy 映射对象?

我知道如何复制或复制 SQLAlchemy 映射对象的问题被问了很多次.答案始终取决于需求或如何解释“重复"或“复制".这是问题的专门版本,因为我得到了使用 make_transient() 的提示. 但是我有一些问题.我真的不知道如何处理这里的主键(PK).在我的用例中,PK 总是由 SQLA(或后台的 DB)自动生成.但这不会发生在新的重复对象上. 代码有点伪. import s ..
发布时间:2021-12-30 14:51:29 Python

SQLAlchemy 和 UnicodeDecodeError

我要了 UnicodeDecodeError: 'ascii' 编解码器无法解码位置 0 中的字节 0xc2:序号不在范围内 (128) 当我将来自我使用 SQLAlchemy 访问的 MySQL 数据库的文本传递给这个函数时: re.compile(ur"]+)>", flags=re.UNICODE).sub(u" ", s) 数据库编码为 utf-8,我什至将编码传递给 SQLAlc ..
发布时间:2021-12-30 14:51:08 数据库

SQLAlchemy 对象已附加到会话

我正在尝试让一个应用程序运行的服务器,但我在登录时遇到错误: [!] Object ''已经附加到会话“2"(这是“3") 我添加的会话似乎已经在数据库中了.这是导致问题的代码片段: @app.route('/login', methods=['POST'])定义登录():u = User.query.filter(User.username == request.form["usernam ..
发布时间:2021-12-30 14:50:58 Python