我們正在測試我們的Unicode兼容性應用程序,並且已經在拉丁字符集之外選擇了隨機字符進行測試。爲什麼SQL Server考慮N'和N'相等?
在拉丁文和日本整理系統下列等式爲真(U+3422):
N'㐢㐢㐢㐢' = N'㐢㐢㐢'
,但下面是不是(U+30C1):
N'チチチチ' = N'チチチ'
這被發現時,測試使用第一個示例(使用U + 3422)的情況違反了唯一索引。我們是否需要對我們用於測試的角色更具選擇性?顯然我們不知道上述比較的語義。對於母語人士來說,這種行爲會很明顯嗎?
有趣的是,fileformat.info中提到了[U + 3422](http://www.fileformat.info/info/unicode/char/3422/index.htm)以下的「[停止]:U + 3422不是一個有效的Unicode字符「。這可能是相關的。 – BalusC 2010-05-12 12:10:13
fileformat.info然後在破解。 U + 3422是中日韓統一表意文字擴展一套完全有效的字符。 – 2010-05-12 12:13:54
@BalusC:但是,unicode.org似乎認爲它是一個有效的代碼點。 – 2010-05-12 12:13:58