我在插入帶有僅由某些特殊Unicode字符變化的主鍵的記錄時遇到問題。如何在SQL Server中爲主鍵使用Unicode字符串
例如,如果我在數據庫中已經有一個記錄,並且主鍵爲"test"
,並且我試圖插入另一個主鍵爲"test + '\u13A4' + '\u13B4' + '\u13B9'"
的記錄,則會出現重複的鍵錯誤。我正在使用EF 5和SQL Server 2012.
主鍵定義爲nvarchar
,並且排序規則設置爲SQL_Latin1_General_CP1_CI_AS
。如果在那裏有特殊的Unicode字符,它可以在主鍵上進行查找,但是如果它只是因Unicode特殊字符而異(如上面的示例中所示),我會在插入時得到重複的鍵錯誤。你如何解決這個問題?
嘗試使用排序規則Latin1_General_100_CI_AS_SC,如下所述:http://msdn.microsoft.com/en-us/library/ms143726.aspx – Jimbo