Auxilio Urgente

05/02/2004 - 17:47 por Gustavo Morales | Informe spam
Select [Ap. Paterno] = P.A_Paterno, [Ap. Materno] = P.A_Materno, [Nombre] LTrim(RTrim(P.Nombre_1)) + ' ' + LTrim(RTrim(P.Nombre_2)), P.CUSSP,
P.DOCIDEN, P.RUC, P.Domicilio, U.Distrito, P.Sexo, P.Fecha_Nac, P.Telefono,
P.EMail, E.Nombre_Empresa, E.Av_Calle_Jr, E.Numero, P.Promedio, P.RAM_1,
P.RAM_2, P.RAM_3, P.AFP From (Persona P
With(Index(Ix_Per_CUSSP,Ix_Per_RUC,Ix_Per_Ubigeo)) Left Join Ubigeo U On
P.Codigo_Ubigeo = U.Codigo_Ubigeo) Inner Join Empresa E
With(Index(Ix_Emp_RUC)) On P.RUC = E.RUC Where P.CUSSP = '20101953069
'

Servidor: mensaje 446, nivel 16, estado 9, línea 1
No se puede resolver el conflicto de intercalación para el operador equal
to.

Viendo el Script generado por SQL veo que la tabla Persona fue creada con :
COLLATE Modern_Spanish_CI_AS y la tabla Empresa con : COLLATE
SQL_Latin1_General_CP1_CI_AS

Que debo hacer?
 

Leer las respuestas

#1 Javier Loria
05/02/2004 - 18:22 | Informe spam
Hola Gustavo:
Si no puedes o no quieres cambiar las Tablas puedes agregar COLLATE a
las comparaciones, por ejemplo:
==WHERE MiColumna = MiOtraColumna
COLLATE SQL_Latin1_General_CP1_CI_AS
==Pero te recomiendo que cambies el COLLATE de la Tabla/Columna, la sintaxis
es:
==ALTER TABLE Tabla
ALTER COLUMN Columna VARCHAR(40)
COLLATE SQL_Latin1_General_CP1_CI_AS
==Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Gustavo Morales escribio:
Select [Ap. Paterno] = P.A_Paterno, [Ap. Materno] = P.A_Materno,
[Nombre] = LTrim(RTrim(P.Nombre_1)) + ' ' + LTrim(RTrim(P.Nombre_2)),
P.CUSSP, P.DOCIDEN, P.RUC, P.Domicilio, U.Distrito, P.Sexo,
P.Fecha_Nac, P.Telefono, P.EMail, E.Nombre_Empresa, E.Av_Calle_Jr,
E.Numero, P.Promedio, P.RAM_1, P.RAM_2, P.RAM_3, P.AFP From (Persona P
With(Index(Ix_Per_CUSSP,Ix_Per_RUC,Ix_Per_Ubigeo)) Left Join Ubigeo U
On P.Codigo_Ubigeo = U.Codigo_Ubigeo) Inner Join Empresa E
With(Index(Ix_Emp_RUC)) On P.RUC = E.RUC Where P.CUSSP = '20101953069
'

Servidor: mensaje 446, nivel 16, estado 9, línea 1
No se puede resolver el conflicto de intercalación para el operador
equal to.

Viendo el Script generado por SQL veo que la tabla Persona fue creada
con : COLLATE Modern_Spanish_CI_AS y la tabla Empresa con : COLLATE
SQL_Latin1_General_CP1_CI_AS

Que debo hacer?

Preguntas similares