Olá, quanto ao desenho de um banco de dados, tampouco se pode dizer que algo
esteja melhor que outra coisa, o que sim que lhe condicionará como desenhe o banco de dados na manutenção da informação, portanto isso tem que ser bem pensado.
A primeira vista, acho que uma boa opção é ter uma tabela chamada por exemplo, “musiteka” com os campos algo como:
id
titulo
artista
album
suporte (digital, vinil, CD, VHS, DVD, Livro, ...)
idSuporte
e em formato aceita os diferentes valores (digital, CD, vinil), exclusivo ou que possa estar em ambos, se por exemplo você contempla a possibilidade de ter a mesma música ripada e em um CD de áudio.
idSuporte me vem na cabeça assim rapidamente para o caso de manter os discos de vinil, CDs referenciados como uma unidade.
Você também pode criar uma lista de colegas:
nome
e-mail
telefone
empréstimos
Onde no caso em que o suporte não seja digital, você pode armazenar aos colegas que lhe emprestam algum disco, CD, livro,... para isto penso no tema do suporteId
Não pensei muito, mas o importante é que saiba que evidentemente embora haja melhor maneira de estruturar os dados, não há nada incorreto, só que crie uma dependência a como tenha que programar a manutenção da informação.
Por J. Manuel Velasco