这可能是一些奇怪的编码问题,但我不知道如何修复它。
我有一个主键列是VARCHAR(50)。如果我插入
dass
然后我插入
daß
然后SQL Server失去理智并抛出主键冲突错误。如果我使用.Net的DataTable类,也会发生这种情况。
这是一个小脚本,所以你可以自己测试一下:
CREATE TABLE Foo
(
Word varchar(50) NOT NULL
)
ALTER TABLE Foo ADD CONSTRAINT PK_Foo PRIMARY KEY CLUSTERED
(
[Word] ASC
)
INSERT INTO Foo VALUES ('dass')
INSERT INTO Foo VALUES ('daß')
有关如何解决此问题的任何想法?我试图制作NCHAR列,但这不起作用。