保持 nvarchar
字段唯一的好方法是什么。我有一个存储 MP3 文件 URL 的字段。 URL 长度可以是从 10 个字符到 4000 个字符的任意值。我尝试创建索引,但它说无法创建索引,因为总长度超过 900 字节。
如果该字段未建立索引,则搜索任何内容都会很慢。我使用 C#、ASP.net MVC 作为前端。
最佳答案
您可以使用CHECKSUM命令并将索引放在带有校验和的列上。
--*** Add extra column to your table that will hold checksum
ALTER TABLE Production.Product
ADD cs_Pname AS CHECKSUM(Name);
GO
--*** Create index on new column
CREATE INDEX Pname_index ON Production.Product (cs_Pname);
GO
然后您可以使用以下查询快速检索数据:
SELECT *
FROM Production.Product
WHERE CHECKSUM(N'Bearing Ball') = cs_Pname
AND Name = N'Bearing Ball';
这里是文档:http://technet.microsoft.com/en-us/library/ms189788.aspx
关于Sql Server - nvarchar 字段上的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21624365/