我正在使用西班牙语数据库,所以当我在寻找“aeiou”时,我还可以在这样的 where 子句中获得“áéíóú”或“AEIOU”或“ÁÉÍÓÚ”:
SELECT * FROM myTable WHERE stringData like '%perez%'
我期待:
* perez
* PEREZ
* Pérez
* PÉREZ
所以我将我的数据库更改为排序规则:Modern_Spanish_CI_AI
我只得到:
* perez
* PEREZ
但如果我这样做:
SELECT * FROM myTable WHERE stringData like '%perez%' COLLATE Modern_Spanish_CI_AI
我得到所有结果都OK,所以我的问题是,为什么如果我的数据库是 COLLATE Modern_Spanish_CI_AI 我必须为我的查询设置相同的排序规则???
我正在使用 SQL-Server 2008