A
но не лучший способ, т.к. если несколько записей будут создаваться в этот момент - могут быть проблемы
Можно сделать предзагрузку. То есть, сначала создается запись с минимальными данными (not null которые), а потом уже ее можно редактировать (получая ID)
первичные ключи создаются не алхимией, а базой данных