使索引唯一,在技术上不是唯一的

时间:2011-06-10 21:37:25

标签: sql-server

我有一个'Messages'表,其中包含以下内容(与此问题相关)字段:

SenderID | int
DateSent | DateTime

我想知道在这两个字段上创建一个唯一索引并有一个问题。从技术上讲,这些领域的组合并不是一个独特的组合(即设计没有什么能阻止它),但实际上它将是。使用此表的应用程序是一个Web应用程序,因此由于页面刷新时间等原因,发件人实际上永远不能立即发送消息。

将此索引设为唯一索引是否可以接受?

3 个答案:

答案 0 :(得分:1)

如果您使其独一无二,并且您的应用程序运行速度足够快,您将获得密钥违规。

我不会让它独一无二。

答案 1 :(得分:1)

UNIQUE同时是一个索引和约束。如果它必须是独一无二的,那就要让它独一无二。如果只想提高查询性能,可以在2个字段上创建非唯一索引。

答案 2 :(得分:0)

使这个指数与众不同的目的是什么?我想在索引中包含DateSent不会缩短查询时间。