Using NOT NULL Constraints with ADD COLUMN

If a table contains data, when you add a column with a NOT NULL constraint you must also include a DEFAULT clause.

If the table is empty, however, you can add a column and apply only the NOT NULL constraint. The following statement is valid whether or not the table contains data:
ALTER TABLE items
   ADD (item_weight DECIMAL(6,2) 
   DEFAULT 2.0 NOT NULL
      BEFORE total_price);