C# SQLite-net define multi column unique

本文关键字:column unique multi define SQLite-net | 更新日期: 2023-09-27 18:31:03

我已经看到了SQLite-net中支持多列唯一约束的更改的引用。我知道它可以直接用sqlite完成,但是我更喜欢保持sqlite-net的做事方法。什么是语法来做多列唯一。单个是 [唯一] 上方的列希望是唯一的。

C# SQLite-net define multi column unique

我通过查看项目中包含的实际单元测试找到了答案。它基于在 index 属性上使用命名参数。例如:

    [Indexed(Name = "ListingID", Order = 2, Unique = true)]
    public string   ListingNumber { get; set; }
    [Indexed(Name = "ListingID", Order = 1, Unique = true)]
    public string   ChannelCode { get; set; }

将在两个必须唯一的字段上创建一个名为 ListingID 的索引。如果您不想要唯一属性,请将其作为参数删除。必须使用命名参数才能使其正常工作。此外,索引中的所有字段必须具有相同的唯一值。