S porovnáváním jde o to, že ačkoli databáze má své vlastní řazení, každá tabulka a každý sloupec může mít své vlastní řazení. Pokud není zadáno, převezme výchozí hodnotu svého nadřazeného objektu, ale může se lišit.
Když změníte řazení databáze, bude to nové výchozí nastavení pro všechny nové tabulky a sloupce, ale nezmění to řazení existujících objektů v databázi. Musíte jít a ručně změnit řazení každé tabulky a sloupce.
Naštěstí jsou na internetu dostupné skripty, které tuto práci zvládnou. Nebudu doporučovat žádné, protože jsem je nezkoušel, ale zde je několik odkazů:
http://www.codeproject.com/Articles/302405/The-Easy-way-of-changing-Collation-of-all-Database
Aktualizovat řazení všech polí v databázi za běhu
http://www.sqlservercentral.com/Forums/Topic820675-146-1.aspx
Pokud potřebujete mít různé řazení na dvou objektech nebo nemůžete řazení změnit – stále můžete JOIN
mezi nimi pomocí COLLATE
příkaz a výběr řazení, které chcete připojit.
SELECT * FROM A JOIN B ON A.Text = B.Text COLLATE Latin1_General_CI_AS
nebo pomocí výchozího řazení databáze:
SELECT * FROM A JOIN B ON A.Text = B.Text COLLATE DATABASE_DEFAULT