add primary key and not null