Como definir a tabela do cliente com vários números de telefone? - Design de banco de dados relacional
CREATE TABLE Phone
(
phoneID - PK
.
.
.
);
CREATE TABLE PhoneDetail
(
phoneDetailID - PK
phoneID - FK points to Phone
phoneTypeID ...
phoneNumber ...
.
.
.
);
CREATE TABLE Customer
(
customerID - PK
firstName
phoneID - Unique FK points to Phone
.
.
.
);
Um cliente pode ter vários números de telefone, por exemplo Célula, Trabalho, etc. phoneID na tabela Customer é exclusivo e aponta para PhoneID na tabela Phone. Se o registro do cliente for excluído, o ID do telefone na tabela Telefone também deverá ser excluído.
Você tem alguma preocupação com o meu design? Isso foi projetado corretamente? Meu problema é phoneID na tabela Customer é filho e, se o registro filho for excluído, não será possível excluir o registro pai (telefone) automaticamente.