Una columna CLAVE PRIMARIA es equivalente a ÚNICA y NO NULA y es una columna indexada de forma predeterminada.
Debe ser ÚNICA porque una clave principal identifica filas en una tabla, por lo que 2 filas diferentes no deben tener la misma clave.
Además, una clave principal puede usarse como FOREIGN KEY en otras tablas y es por eso que no puede ser NULL para que la otra tabla pueda encontrar las filas en la tabla referenciada.
Por ejemplo:
CREATE person{
id INT PRIMARY KEY, -- equals UNIQUE NOT NULL
name VARCHAR(20)
};
CREATE family{
id INT PRIMARY KEY, -- equals UNIQUE NOT NULL
menber_id INT FOREIGN KEY REFERENCE person(id)
};