当我尝试在SQL Server 2008 R2中创建索引时,我收到以下错误.
CREATE INDEX失败,因为以下SET选项具有不正确的设置:'ANSI_PADDING'
索引脚本是
CREATE UNIQUE NONCLUSTERED INDEX [IX_TabPermission_Roles] ON [dbo].
[TabPermission]
(
[RoleID] ASC,
[TabID] ASC,
[PermissionID] ASC
)
INCLUDE ( [AllowAccess])
WHERE ([RoleID] IS NOT NULL)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF,
IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
Run Code Online (Sandbox Code Playgroud)
表定义在这里.在表定义中,您可以发现没有包含char,varchar,binary或varbinary的列.
如果我运行索引创建脚本SET ANSI_PADDING On,它的工作原理.我的问题是为什么我需要设置它On,在表定义中,我没有任何具有char,varchar,binary或varbinary的列.您还可以发现此表中的所有这些列都具有Ansi_padding设置Off.
此表中列的ANSI填充