Oracle Error PLS-00366: subtype of a NOT NULL type must also be NOT NULL

Oracle Error Message

PLS-00366: subtype of a NOT NULL type must also be NOT NULL

Reason for the Error

After a subtype was defined as NOT NULL, it was used as the base type for another subtype defined as NULL. That is not allowed. For example, the code might look like DECLARE SUBTYPE Weekday IS INTEGER NOT NULL; SUBTYPE Weekend IS Weekday NULL; — illegal instead of DECLARE SUBTYPE Weekday IS INTEGER NOT NULL; SUBTYPE Weekend IS Weekday;

Solution

Revise the subtype definitions to eliminate the conflict.