SQL Server - error de conversion

   
Vista:

error de conversion

Publicado por sandra (2 intervenciones) el 04/07/2008 16:15:45
Hola a todos y muchas gracias por su ayuda, tengo la siguiente consulta y me sale el siguiente error: Implicit conversion of varchar value to varchar cannot be performed because the collation of the value is unresolved due to a collation conflict.

Veo que el error es FC.codigoFacCampana pero ya he probado con traer solo datos: que tenga null el codigo, sin null y saca el mismo error.

los Tipos de datos son: numeroFacCampana= int, codigoFacCampana=varchar, nombre= varchar, precio=float.

SELECT FC.numeroFacCampana, Cliente.nombreCliente, C.*,
CAST(FC.numeroFacCampana AS VARCHAR(10)) + FC.codigoFacCampana + ' - ' + Cliente.nombreCliente + ' - $' + LTRIM(STR(C.PRECIOTOTALCAMPANA, 20, 0)) AS BUSCAR
FROM FacturaColombia FC INNER JOIN
Campana C ON FC.idCampana = C.idCampana INNER JOIN
Cliente ON C.idCliente = Cliente.idCliente
WHERE FC.FECHAPAGOFACTURACAMPANA IS NULL

Lo raro es que tengo una consulta parecidad y si funciona.
Les agradecería si me ayudan con este problemita.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:error de conversion

Publicado por Isaias (3308 intervenciones) el 04/07/2008 18:53:50
Ambas tablas, tienen diferente COLLATE declarado

¿Como lo investigo?

SP_HELP <tutabla>

¿Como lo resuelvo?

ALTER TABLE COLLATE = 'Tucollate'

- o -

WHERE CAMPO <CollateX> = CampoZ <CollateX>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error de conversion

Publicado por sandra (6 intervenciones) el 04/07/2008 22:05:59
Hola gracias por tu respuesta, pero no entido lo de que tiene diferente COLLATE????
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error de conversion

Publicado por Isaias (3308 intervenciones) el 07/07/2008 21:01:37
El SERVER, la BASE, la TABLA, incluso, a nivel COLUMNA, se puede definir un COLLATE diferente.

¿Porque?

Porque podrias guardar en cada columna, datos de diferentes idiomas, como el JAPONES, TURCO, KOREANO, INDU, RUSO, etc.

Con acentos, sin acentos, validando MAYUSCULAS y minusculas.

Debes verificar que TODAS tus tablas tengan el mismo COLLATE, ya te dije como:

SP_HELP <tutabla>

Y revisas que COLLATE tiene

Ya te comente como cambiar el COLLATE y bueno, puedes hacer mencion de que COLLATE deseas utilizar en tu columna, de no quererlo cambiar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar