viernes, 20 de noviembre de 2009

Problemas de idiomas en SQL Server

Haciendo una migración en bases de datos MS SQL Server me encontré con que una de las tablas tenía la definición de un campo en un idioma diferente por lo que al hacer la sgte. consulta:

select c1.idciudad, c2.cd_comuna
from db_SNP_RNASQL.dbo.__comuna c1
,db_SNP_RNASQL.dbo.tb_comuna c2
where c1.comuna = c2.nm_comuna
order by 2

me arrojaba el sgte. error:

No se puede resolver el conflicto de intercalación entre "Modern_Spanish_CI_AS" y "Traditional_Spanish_CI_AS" de la operación equal to.

La solución fue aplicar una especie de traductor de estas columnas quedando la consulta así:

select c1.idciudad, c2.cd_comuna
from db_SNP_RNASQL.dbo.__comuna c1
,db_SNP_RNASQL.dbo.tb_comuna c2
where c1.comuna COLLATE Modern_Spanish_CI_AS =
c2.nm_comuna COLLATE Modern_Spanish_CI_AS

order by 2

La fuente de este conocimiento en capitalfederal.com

No hay comentarios.: