Cita:
Iniciado por iislas ¿Porque complicarse las cosas y no declararlo DATETIME desde un inicio, sabiendo que iba a llevar este tipo de dato?
Lo que pasa es que a los DBA's les encanta complicarle el trabajo a los programadores jejeje.
Solo una recomendación para MiguelFT, hace tiempo tuve bastantes problemas por situaciones como al que comentas, "heredé" una base de datos y algunas tablas manejaban la fecha como mencionas. Ahórrate tiempo y esfuerzo y si puedes cambia la estructura de tus tablas los campos a datetime, como lo menciona iislas, pero si por lógica de negocios esto no es factible, entonces siempre realiza la comparación isdate antes de hacer las conversiones porque si existe algún registro que no cumpla con el formato especificado te "truena" toda la consulta.
Código SQL:
Ver originalSELECT isdate('2009-07-14 05:50:15') -- 1
SELECT isdate('2009-02-30 05:50:15') -- 0
SELECT isdate('2009-07-14 25:50:15') -- 0
Saludos
Leo