我有一个名为“service”的MySql表:
*Table Service*
PK serv_ID Int(2)
Address Varchar(20)
Date Date
比我有一个表名“材料”:
*Table Materials*
PK Mat_ID Int(2)
Stock_Qty Int(2)
Unit enum(m,u)
现在,对于每项服务,我花了一些材料,我已经制作了一张桌子:
Service_Material
FK serv_ID
Fk Mat_ID
Qty int(2)
如何防止每项服务,不要重复相同的材料?
答案 0 :(得分:2)
使用唯一约束或索引:
create unique index unq_service_material_serv_mat on service_material(serv_id, mat_id);
您也可以将其添加为约束(而不是):
alter table service_material
add constraint unq_service_material_serv_mat
unique(serv_id, mat_id);