jueves, 24 de junio de 2010

Conversion failed when converting the nvarchar value <string> to data type int.

Bonito error cuando me estoy trayendo, para cargar un GridView, el nombre, primer y segundo apellido de una persona y le añado por delante el identificador.

La cadena que yo esperaba que me funcionara era:
QM_Conductores.id + ' - ' + QM_Conductores.nombre + ' ' + QM_Conductores.apellido1 + ' ' + QM_Conductores.apellido2 AS Conductor

Y la que funciona bien es:
CAST (QM_Conductores.id AS VARCHAR(3)) + ' - ' + QM_Conductores.nombre + ' ' + QM_Conductores.apellido1 + ' ' + QM_Conductores.apellido2 AS Conductor

¿El truco? La necesidad de realizar la conversión explicita del tipo entero a varchar para entonces poder utilizar el operador de concatenación (+).

Suerte y al toro!!

No hay comentarios: