问题标签 [alembic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 使用 DATE_FORMAT 的 MySQL 视图的 Alembic 迁移脚本
我们正在尝试使用 Alembic(离线模式)生成 SQL 迁移脚本。迁移中的部分视图使用 MySQL 函数 DATE_FORMAT,如下例所示。创建迁移脚本时,百分比字符在生成的 SQL 中加倍。
我们一直在手动修改生成的脚本以将其设置回单个 % 字符,但希望摆脱这种做法,让我们的升级/降级生成可以在不手动修改的情况下通过管道传输到数据库的 SQL。
据我所知,使用 no_parameters = True 在 execution_options 中设置的在线模式运行 Alembic 迁移允许,“ ...百分号直接通过而不转义,从而提供与 DBAPI 执行和静态脚本的交叉兼容操作一代。 ”
(见: https ://alembic.readthedocs.org/en/latest/changelog.html#change-1dff9e522d76403d9af885164fd284e9 )
由于 execution_options 被设置为 Connection 的一个属性,并且在离线模式下运行时不存在任何连接,这对我们来说似乎不是一个选项。
任何帮助或建议将不胜感激!
========================
Alembic 迁移文件:
=======================
生成的 SQL:
python - 如何为 alembic 创建的所有内容设置不同的所有者?
因此,我们有一个受限用户应该更新、插入和删除表,以及一个可以创建、更改和删除表的用户。
我们使用 alembic 来迁移数据库,所以当然第二个用户必须运行迁移,但是第一个用户没有使用表的权限。
当然,我可以运行一些 postgres 特定的代码来单独更改任何 alembic 创建的所有者,但这是不对的。我该怎么解决这个问题?或者这是一个postgres问题?我看不到如何在一个数据库的不存在的表上授予 user1 东西。
python - 在烧瓶迁移或 alembic 迁移中创建种子数据
如何在第一次迁移中插入一些种子数据?如果迁移不是最好的地方,那么最好的做法是什么?
python - 通过 Flask SQLAlchemy 从 SQLite 读取 BLOB (LargeBinary) 返回 None
我正在尝试使用 Flask-SQLAlchemy 从 SQLite 读取 BLOB (LargeBinary) 对象,但出现此错误:TypeError: must be string or read-only buffer, not None
.
我的代码如下:
我的 SQLAlchemy 模型是:
这是我的架构:
sqlalchemy - 无法使用 alembic 自动生成迁移
我的存储库可以在这里找到http://goo.gl/Q4WJXy(alembic 文件夹中的版本),我尝试使用自动生成迁移,
与创建表无关,即空降级和升级功能。我正确配置了本地数据库。我该如何解决这个问题?
我的日志看起来像这样
提前致谢
python - 通过alembic脚本进行并发数据库表索引
是否可以通过 alembic 脚本为 DB 表创建并发索引?
我正在使用 postgres DB,并且能够在 postgres 提示符下通过 sql 命令创建并发表索引。(在 (); 上同时创建索引)
但是找不到通过 Db 迁移(alembic)脚本创建相同的方法。如果我们创建普通索引(非并发),它将锁定数据库表,因此无法并行执行任何查询。所以只想知道如何通过alembic(DB迁移)脚本创建并发索引
python - Alembic bulk_insert 到带有模式的表
我正在查看bulk_insert的示例。
我想bulk insert
调用一个特定的模式,kpi
但我不知道该怎么做。有人可以帮我吗?
python - 如何在 Alembic/SQLAchemy 中使用 USING 子句?
我想使用 Alembic 将数据库的列类型从字符串更改为整数。如果我使用纯 SQL,它可以达到目标:
但是当我像这样使用 Alembic 时:
我收到一个错误:
SQLAlchemy 生成的 SQL 语句是:
有人可以通过 告诉我如何在 alembic 或 SQLAlchemy 中使用 SQLop.execute(SQL)
吗?
python - 使用 Alembic 在 SqlAlchemy 中定义索引
我完全同意这是一个非常基本的问题,可能在某个地方有它的答案,但我不知何故找不到它。(我对 SqlAlchemy 也不是很精通)
我有这个代码 -
我怎样才能
- 在此定义一个单列索引(比如在电子邮件上)?(Probaby index=True 会这样做。如果是这样,那么它主要是我迷路的下一个点)
- 如何在此定义多列索引(例如,在电子邮件和 ip_addr 上。我正在使用 alembic 进行迁移,并且当我定义类似 - Index('user_index',Users.c.email) [注释行] 在类中的列定义之后,它确实给了我一个错误“NameError: name 'Users' is not defined”)
在 alembic 的 env.py 中,除了所有正常和默认行之外,我还有这两行
我的应用名称是教程。如果以某种方式需要它,我将使用 Pyramid 作为框架。和 postgres 作为数据库。
我再说一遍,这可能是一个非常基本的问题,但我现在无法弄清楚,所以任何帮助都会很棒。
谢谢。
python - Alembic 删除外键索引
我有一个专栏address_id = db.Column(db.Integer, db.ForeignKey(Address.id, ondelete='CASCADE'), index=True)
。使用 Alembic 自动生成迁移总是会添加一个drop_index
操作。
为什么每次生成迁移时都会发生这种情况?