Check date type column for nullable and value range : Constraint Check « Constraints « Oracle PL / SQL






Check date type column for nullable and value range

   
SQL>
SQL> CREATE TABLE purchase (
  2       product_name  VARCHAR2(25),
  3       product_price NUMBER(4,2),
  4       purchase_date DATE
  5       );

Table created.

SQL>
SQL>
SQL>
SQL> ALTER TABLE purchase ADD (
  2       CONSTRAINT reasonable_date CHECK(
  3            purchase_date IS NOT NULL
  4            AND
  5            TO_CHAR(purchase_date, 'YYYY-MM-DD') >= '2000-06-30'
  6            )
  7       );

Table altered.

SQL>
SQL> INSERT INTO purchase VALUES ('S', 1, '28-FEB-00');
INSERT INTO purchase VALUES ('S', 1, '28-FEB-00')
*
ERROR at line 1:
ORA-02290: check constraint (JAVA2S.REASONABLE_DATE) violated


SQL>
SQL>
SQL> drop table purchase;

Table dropped.

SQL>

   
    
  








Related examples in the same category

1.Constriant: check value between 0 and 100
2.State a check constraint that check relation between two columns
3.Follow the contraint
4.add constraint for a column: check (gender in ('MALE', 'FEMALE'))
5.Constraint check with 'upper' function
6.Constraint check with in function
7.Violate constraints
8.Check nullable and value range for one single column data
9.Add two conditions for one column
10.Add constraint for date type column
11.A check constraint can also be created or added as a table constraint.
12.Add constraint to ensure that value from one column is bigger than that from another
13.Setting CHECK constraint for number type field
14.Setting the Check constraint for int value field during declaration
15.Syntax for adding check constraint to a column
16.Use decode() function in check constraints
17.Violate a check constraint
18.alter table dept add emp_count number, constraint must_be_between_3_8, check(emp_count between 3 and 8 OR emp_count = 0), deferrable initially deferred
19.Could only contain three values
20.Must be upper case