如何解决“允许的最大密钥长度为900字节”。

时间:2014-02-21 11:52:51

标签: sql-server

我有以下表结构:

CREATE TABLE [dbo].[Signature]
(
    [caption_id] [nvarchar](512) NOT NULL,
    [signature_id] [int] NOT NULL
)

我想使用以下alter命令添加主键:

ALTER TABLE [dbo].[Signature] 
ADD CONSTRAINT [pk__signatures] 
 PRIMARY KEY CLUSTERED ([caption_id] ASC,[signature_id] ASC);

执行上述alter命令时,出现以下错误:

Ms 1944,Level 16,State 1,Line 1 未创建索引'pk__signatures'。该索引的密钥长度至少为1028字节。最大允许密钥长度为900字节。 Msg 1750,Level 16,State 0,Line 1 无法创建约束。查看以前的错误。

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

看看这里它可以帮助你 Living with SQL's 900 Byte Index Key Length Limit