使用 MD5 在 Postgres 上使用 SQLAlchemy 创建唯一索引
Create unique index with SQLAlchemy on Postgres using MD5
我有一个可以包含长文本的列,我想为其创建唯一索引。
我在几个地方(例如here)读到,这样做的方法是在列的 MD5 上创建索引。
我尝试添加以下代码:
__table_args__ = (
sa.Index('unique_data_hash', 'MD5(data)', unique=True)
)
但是当我尝试使用它时,我得到
KeyError: 'MD5(data)'
如何使用 SQLAlchemy 添加这样的索引?
经过另一次搜索,我意识到答案是使用 sa.func.md5,效果非常好!
我有一个可以包含长文本的列,我想为其创建唯一索引。
我在几个地方(例如here)读到,这样做的方法是在列的 MD5 上创建索引。
我尝试添加以下代码:
__table_args__ = (
sa.Index('unique_data_hash', 'MD5(data)', unique=True)
)
但是当我尝试使用它时,我得到
KeyError: 'MD5(data)'
如何使用 SQLAlchemy 添加这样的索引?
经过另一次搜索,我意识到答案是使用 sa.func.md5,效果非常好!