请提示我,如何在sqlalchemy中创建唯一约束。

我有带有唯一字段 sku表,但是我没有从db中删除对象。 我只是将其标记通过实地is_removed因此,我不能同创建新对象sku时,与同一对象sku在数据库存在,但已被删除(is_removed = TRUE)

我想在sqlalchemy中创建唯一约束,但我不知道如何。

像这样:

class Model(db.Model):
    #but only when is_removed == False. How do write this?
    __table_args__ = (UniqueConstraint('is_removed', 'sku',),) 
    id = db.Column(db.Integer, primary_key=True)
    sku = db.Column(db.String(100), nullable=False)
    is_removed = db.Column(db.Boolean, default=False)

  ask by Greg Eremeev translate from so

本文未有回复,本站智能推荐:

1回复

SQLAlchemy:UNIQUE约束失败错误,但没有设置唯一约束

我正在使用Flask和SQLAlchemy与SQLite一起创建一个应用程序来跟踪您的食品室中的项目以及您想要制作的食谱。 我很难过这个。 我有一个表,其中记录可能有重复的字段。 每次我尝试在我的应用程序中为此表创建数据库条目时,都会引发“IntegrityError:UNIQUE约束
2回复

在Flask-SQLalchemy中是否可以将布尔列设置为唯一约束?

是否可以通过在任何给定时间只能将一个记录设置为true的方式来设置表? 我有一个“用户”表和一个“凭据”表。 用户可以具有一个或多个与其关联的登录凭据。 一次只能有一个“活动”凭据,这由“凭据”表中的“活动”列(布尔值)指示。 是否可以设置某种约束来防止两个记录同时处于“活动”状
1回复

sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) 唯一约束失败

我正在尝试为某些课程创建表格,最后一列是另一个表格,并显示了讲师姓名。 但是当一位讲师的名字在不同的课程中重复时,我发现了以下问题: sqlalchemy.exc.IntegrityError:(sqlite3.IntegrityError)唯一约束失败:teacher.full_name
2回复

如何定义跨三列的唯一约束?

下面的EventInvitation模型是一个事件的简单邀请,从一个用户发送给另一个用户。 我想确保邀请在三列中是唯一的:to_user、from_user 和 event。 我试过这个cstrt列,但它不起作用。 该约束应该适用于 SQLite,以及生产中的 MySQL。 我如何定义这个唯一约
2回复

Alembic:如何向现有列添加唯一约束

我有一个表 'test' 有一个没有约束的列 'Name'。 我需要ALTER给它一个此列UNIQUE约束。 我该怎么做? 我应该使用op.alter_column('???')还是create_unique_constraint('???') ? create_unique_constrain
1回复

删除未命名的唯一约束

我正在将 Alembic 与 Flask-SQLAlchemy 一起使用,并且我正在尝试删除对我的一个表中的列的唯一约束。 查看迁移 - 这个约束从未被命名为: sa.UniqueConstraint('title') ,很明显,当我更新模型时,Alembic 无法sa.UniqueConstrai
1回复

如何在SQLAlchemy中对整个列实施唯一性约束?

我有以下MySQL类。 我想确保b的值在整个列中都是唯一的。 如何更改此声明以强制执行该约束?
1回复

如何有效地执行具有唯一约束的多对多条目

我想不通。 我正在尝试学习 sqlalchemy,并且在堆栈溢出方面进行了大量搜索。 我需要让这个脚本工作。 流派有问题,我无法弄清楚。 主要问题是之前添加的类型不允许再次添加或更新到不同的电影。 E4:如何重新定义我的模型以允许 sqlalchemy 处理唯一约束,并且仍然能够插入新标题,将