Ver Mensaje Individual
  #7 (permalink)  
Antiguo 30/09/2014, 10:04
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Usar un trigger para cambiar el formato fecha

Cita:
Iniciado por jessicamcav13 Ver Mensaje
Tienes razón, pero el problema es que si lo convierto tipo DATETIME o TIMESTAMP (guardo fecha y hora), a la hora de insertar un tiempo, me inserta 0000-00-00 00:00:00 por el formato que tiene DATETIME y TIMESTAMP.

Claro, que debería de poner una máscara en el insert, pero no puedo. Los insert los saco de un archivo sql de un aparato, y la idea es automatizar los insert...por eso debo de cambiar la máscara después de hacer la inserción.
Ok, el error de "0000-00-00 00:00:00 " es normalmente porque entr un dato nulo o que no es de fecha, ni tampoco numérico. De lo contrario te ingresaría algo, aunque fuese una fecha incorrecta.
Esto nos indica que tienes un problema mayor y es que el formato del dato entrante está sucio. Sería mejor verificar por qué el aparato está entregando algo indebido, y en todo caso sería bueno que nos mostraras un ejemplo real de esos datos, a fin de darte un mejor acercamiento. Ten en cuenta que si el dato está mal formateado en el insert, también va a generar erroes de conversion en el TRIGGER, con lo que estarías pasando el problema de un lado a otro, pero no solucionandolo.

Por otrolado, aclarame un punto, una vez que capturas el dato y lo estás por mandar a insertar a la tabla, ¿cómo realizas ese INSERT? ¿Puedes mostrarnos como queda armada la query en ese caso?

Entendamos que si se pudiera resolver el problema en el INSERT, el TRIGGER se volvería INNECESARIO (lo que sería una excelente idea).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)