update con case error de intercalacion
Publicado por yeso (1 intervención) el 26/08/2010 15:50:01
Hola,
trato de actualizar dos campos en función del valor de uno de ellos, este es el codigo:
UPDATE PRUEBA
SET PRUEBA.fecha_pen =
CASE
WHEN PRUEBA.fecha_pen is null THEN getdate()
WHEN PRUEBA.fecha_pen is not null THEN PRUEBA.fecha_pen
END,
PRUEBA.destino_pen =
CASE
WHEN PRUEBA.fecha_pen is null THEN PRUEBA.iso_destino
WHEN PRUEBA.fecha_pen is not null THEN PRUEBA.destino_pen
END
WHERE PRUEBA.pag_estado = 1
Les explico: cuando fecha_pen es nulo registro la fecha, en el caso de que ya este registrada, mantengo la fecha que ya este registrada; en el campo destino_pen, si el campo fecha_pen es nulo registro el destino, si ya esta registrado deberia mantener el destino ya registrado pero el analizador de consultas me muestra el siguiente mensaje:
"No se puede realizar la conversión implícita del valor char a char porque la intercalación del valor no está resuelta a causa de un conflicto de intercalación." Si omito este "WHEN" el campo se actualiza a nulo.
Este codigo se debe ejecutar cada dia mediante un job.
Como soluciono este problema???
Gracias
Yecid
trato de actualizar dos campos en función del valor de uno de ellos, este es el codigo:
UPDATE PRUEBA
SET PRUEBA.fecha_pen =
CASE
WHEN PRUEBA.fecha_pen is null THEN getdate()
WHEN PRUEBA.fecha_pen is not null THEN PRUEBA.fecha_pen
END,
PRUEBA.destino_pen =
CASE
WHEN PRUEBA.fecha_pen is null THEN PRUEBA.iso_destino
WHEN PRUEBA.fecha_pen is not null THEN PRUEBA.destino_pen
END
WHERE PRUEBA.pag_estado = 1
Les explico: cuando fecha_pen es nulo registro la fecha, en el caso de que ya este registrada, mantengo la fecha que ya este registrada; en el campo destino_pen, si el campo fecha_pen es nulo registro el destino, si ya esta registrado deberia mantener el destino ya registrado pero el analizador de consultas me muestra el siguiente mensaje:
"No se puede realizar la conversión implícita del valor char a char porque la intercalación del valor no está resuelta a causa de un conflicto de intercalación." Si omito este "WHEN" el campo se actualiza a nulo.
Este codigo se debe ejecutar cada dia mediante un job.
Como soluciono este problema???
Gracias
Yecid
Valora esta pregunta


0