Question: why null values are not allowed in primary key?
Answer: A primary key must uniquely identify a record - i.e., each record can be expressed in the terms of "the record which has a key that equals X". Since null is not equal to any value, it cannot be used as a primary key.