DateTime en Oracle y SQLServer

Necesito generar consultas que funcionen tanto en SQLServer como en Oracle.
Por el momento estoy teniendo problemas con los DateTime, ya que son tratados de forma diferente, por ejemplo en Oracle se utiliza las funciones TO_CHAR y TO_DATE para los inserts y los updates, y en SQLServer estas funciones no existen.
Hay alguna forma de hacer una misma consulta (por ejemplo un INSERT con DateTime) que funcione tanto en SQLServer como en Oracle.

1 respuesta

Respuesta
1
El Lenguaje SQL es un lenguaje estándar común para TODAS LAS BASES DE DATOS. Todas las bases de datos SQL se comprometen a cumplir como mínimo con las especificaciones ANSI.
De todas formas cada una de las plataformas de BD ha desarrollado una serie de funciones de ayuda EXTRAS y que solo sirven para ellos. Es una forma de acostumbrarte a usar ORACLE o SQL-Server y que no quieras cambiar.
Tienes dos opciones, o no usas nunca este tipo de funciones. Lo cual es muy complicado para el caso que planteas de TO_DATE. O la solución que te recomiendo: Olvidate de las Fechas.
Olvidarse de las fechas solo indica que las definas en tu base de datos como de tipo CADENA. Son fáciles de actualizar y no requieres ningún tipo de función EXTRA que no funcionarán en la otra plataforma.
En mi caso hice lo mismo que tu para SQL-Server y DB2. El quitar el tipo Fecha y sustituirlo por cadena me ayudó mucho. Pero en un par de ocasiones tuve que poner dos sentencias SQL y ejecutarlas dependiendo a qué base de datos se dirijan.
Espero haberte ayudado. Un Saludo:
Jorge
P.D.: Felices fiestas y próspero año nuevo...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas