Uma opção é "testar" seu código em relação à incompatibilidade de agrupamento.
Você pode usar o agrupamento especial "DATABASE_DEFAULT" para coagir sem saber qual é o agrupamento real. Você o utiliza em colunas do tipo char em tabelas temporárias, variáveis de tabela e tabelas de sistema que você precisa usar.
Exemplo:
CREATE TABLE #Currency (CCY CHAR(3))
GO
INSERT #Currency VALUES ('GBP')
INSERT #Currency VALUES ('CHF')
INSERT #Currency VALUES ('EUR')
GO
SELECT Something
FROM myTable M JOIN #Currency C ON M.CCY = C.CCY --error!
GO
-- in join too
SELECT Something
FROM myTable M JOIN #Currency C ON M.CCY = C.CCY COLLATE DATABASE_DEFAULT --no error
GO
DROP TABLE #Currency
GO
CREATE TABLE #Currency (CCY CHAR(3) COLLATE DATABASE_DEFAULT)
GO
INSERT #Currency VALUES ('GBP')
INSERT #Currency VALUES ('CHF')
INSERT #Currency VALUES ('EUR')
GO
SELECT Something
FROM myTable M JOIN #Currency C ON M.CCY = C.CCY --no error!
GO
DROP TABLE #Currency
GO
Isso também significa que, quando seus clientes migram seu banco de dados para uma nova caixa do SQL Server com outro agrupamento diferente, ele também funciona ...