在 mvc 模型中使用字符串 ID 字段的任何缺点



我们正在 mvc4 中创建一个相对基本的 CMS 站点。

过去,我们一直遵循为ID字段自动生成int的惯例,并有一个单独的字符串字段来保存url。

但大多数数据检索都是基于 url 字段的。

因此,我想知道是否最好完全丢弃 int ID 并使用 url 字段作为 ID。

这感觉是正确的做法,但我担心以后可能会给我带来悲伤。

除了确保每个 url 都是唯一的之外,这是否会给我带来任何其他影响或不便?

您是否在此字段上与其他表进行了大量连接?如果是这样,您需要将其作为外键存储在多个位置,这可能会占用一些空间(但在当今的计算世界中,空间并不是什么大问题)。是否允许用户更新 URL?如果是这样,您还必须更新外键的位置。根据数据库的不同,这可能会很慢。与 varchar 相比通常比 int 慢,因此查询可能会更慢......我只会索引 URL 并保留代理键,但我倾向于懒惰的一面。

相关内容

最新更新