Varchar(max) 列不允许成为 SQL Server 中的主键。
可以设为主键的 varchar 类型的最大长度是多少。
这可能是一个不好的做法,但遇到了这种情况。
> 900 字节是主键的最大长度,在我看来这是一个坏主意,为什么不使用代理键呢?
这个问题已经在这个线程中得到了回答; 简短的回答是索引字段不能超过 900 字节。也就是说,出于各种原因(例如效率和可维护性),使用长 VARCHAR 字段作为索引通常是一个坏主意。
主键在所有其他索引中用于标识行。 将潜在的数兆字节值作为键意义不大,因此通常对任何键中的总字节数都有限制。