【发布时间】:2021-05-11 21:12:08
【问题描述】:
我正在尝试使用 typeorm softdelete 功能,为了删除它的罚款,向 deletedAt 字段添加时间戳,但是当你有像“用户名”这样的唯一字段并且你软删除它然后尝试添加另一条具有相同“用户名”的记录时,问题就出现了"字段值作为删除记录。它不接受它,因为它已经插入一次并且数据库对软删除没有感知。所以我尝试添加另一个字段,使其成为结合“用户名”和“deletedAt”的复合唯一约束,在 Postgres 中似乎 Null 没有像我预期的那样被索引。因此,您可能再次为 deletedAt 添加具有相同“用户名”和相同“NULL”值的多条记录。 试图通过将默认值 0 分配给 deletedAt 来绕过这一点,现在我认为主要问题是如何告诉 typeorm 对待 0 与在获取查询时对待 NULL 相同。
【问题讨论】:
-
你解决了吗?如果有,你介意分享一下吗?
标签: postgresql duplicates typeorm unique-constraint soft-delete