Ver Mensaje Individual
  #7 (permalink)  
Antiguo 16/09/2009, 07:42
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: restriccion de una fecha

Parece que no se puede. Hice multiples pruebas sin ningún resultado. Asumo que el rango que se le da al ckeck constraint debe ser fijo y no permite la comparación con una función que es dinamica.

Al hacer una prueba así:

Código sql:
Ver original
  1. CREATE TABLE tbl_Proyectos(
  2. proyectoId NUMBER(8)
  3. CONSTRAINT p_id_nn NOT NULL,
  4. proyectoDescripcion varchar2(30)
  5. CONSTRAINT p_des_nn NOT NULL,
  6. proyectoClienteId NUMBER(12)
  7. CONSTRAINT p_clid_nn NOT NULL,
  8. proyectoFechaInicio DATE NOT NULL
  9. CONSTRAINT p_fch_ck CHECK (proyectoFechaInicio<=to_date('2009-09-16','YYYY-MM-DD')));

De esta forma la tabla se crea correctamente.

Esperemos los cometarios de Juan carlos para ver existe forma de hacer lo que quieres.
Sin embargo, como te dije en el primer post, esto lo puedes controlar desde una función en plsql o desde la aplicación que tenga conexión a la base.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming