Oracle produce un sistema de gestión de base de datos relacional que mantienen los datos en tablas . Cada tabla contiene columnas , que tienen que ser dado un tipo de datos . Oracle tiene un tipo de datos especial para las fechas. El tipo de datos de fecha de Oracle contiene la fecha y la hora. Esto permite una mejor comparación y manipulación de las fechas que si no eran más que campos de texto. Fecha Restricciones
El tipo de datos especial permite la validación automática de los datos . Fueron fechas celebradas como cadenas de texto , se necesitan los programadores el desarrollo de un método de entrada de datos para llevar a cabo los controles que la fecha entró era un formato válido , por ejemplo, que el día que se dio fue posible en el mes dado. Si bien se trata de fechas , muchos programadores a menudo olvidan el elemento tiempo está presente en cada fecha almacenada en la base de datos . Si una fecha se inserta en la base de datos no incluye el tiempo, el valor predeterminado es "00:00 ". Si un elemento de tiempo se inserta en la base de datos , el formato de fecha asegura que los números que componen ese momento están en un formato válido.
Fecha representación
diferencias horarias en las fechas son a menudo pasados por alto debido a las dos representaciones diferentes de las fechas en el sistema Oracle . Los valores mantenidos en la base de datos no siguen ningún formato de fecha reconocida . Se almacenan como un número que representa el número de segundos desde el 1 de enero de 4712 antes de Cristo. Sin embargo , este número rara vez se muestra, incluso una consulta directa dentro de las fechas del sistema operativo de la base de datos se muestran en un formato de fecha. Si una consulta sobre una columna de fecha no incluye un formato de fecha , la fecha se extrae en el formato de fecha por defecto, que es "DD -MON -YY ".
Diferencia horaria < br >
una columna poblada por una función de fecha contendrá automáticamente la fecha y hora correcta . Ejemplos de ello son las columnas de población mediante la función SYSDATE . Sysdate da la fecha y la hora actuales , que se obtiene de la fecha y hora del sistema de la base de datos . Por lo tanto , algunos valores pueden contener fechas con el vacío "00:00 " y otros tienen tiempo real adjunta . Sin embargo, si " 01-JAN-2011 00:00" y " 01 -ene- 2011 14:20 " son a la vez consultadas de la base de datos , que ambos aparecen como "01 -JAN - 11 ", por lo que se verá el misma .
Problemas
Oracle programadores con frecuencia olvidan el elemento tiempo al comparar fechas. Esto puede hacer que los programas parecen comportarse de forma incorrecta . Cuando los registros de proceso en comparación con una fecha o una función de tiempo , el programador podría estar desconcertado por qué un comando para manipular todos los registros con un valor de columna fecha de sysdate - 4 ( cuatro días antes ) no ve muchos registros que debería atrapados. Esto es debido a la diferencia de tiempo de los dos valores . Una comparación con sysdate - 4 sólo dará a los registros con el mismo tiempo como el tiempo actual , pero cuatro días antes . Cuando se trabaja con las fechas , los programadores deben tener en cuenta para descontar el elemento de tiempo mediante el uso de la función trunc ().