Junior — Middle
Оё таҷрибаи кор бо базаҳои додаҳо доред, ки чанд калиди табиӣ истифода мебаранд?
sobes.tech AI
Ҷавоб аз AI
Бале, дар базаҳои додаҳо баъзан истифодаи калидҳои мураккаб (мулти) табиӣ, ки аз чанд майдон иборатанд ва нишондиҳандаи хусусиятҳои бизнеси беназир мебошанд.
Масалан, дар ҷадвали фармоишҳо, беназмиятӣ метавонад бо ҳамҷоягии order_number ва store_id муайян карда шавад, агар рақамҳои фармоиш дар мағозаҳои гуногун такрор шаванд.
Кор бо чунин калидҳо эҳтиёткорона сохтани пурсишҳо ва индексҳоро талаб мекунад, ва дар ORM — тавсифи дуруст аз калиди мураккаб.
Масалан дар SQL:
CREATE TABLE orders (
order_number INT,
store_id INT,
order_date DATE,
PRIMARY KEY (order_number, store_id)
);
Дар Java бо JPA, барои калиди мураккаб одатан як синфи алоҳида бо аннотатсия @Embeddable сохта мешавад ва дар объект бо @EmbeddedId истифода мешавад.