Vamos agora ver um modelo um pouco mais complexo, ele representa um sistema de vendas de uma empresa:
Exemplo de diagrama de relacionamentos e modelo de dados.
Vamos ver se você fixou bem os conceitos:
Contato_cliente, cliente, endereço_cliente, pedido são algumas das tabelas presentes nesse modelo.
Contato_clinte é uma tabela auxiliar que foi criada para permitir que um cliente possua várias formas de contato.
Da mesma forma, endereco_cliente é uma tabela auxiliar que foi criada para permitir que um cliente possa ter vários endereços.
A tabela cliente tem como campos: id_cliente (representa o código do cliente e também é a chave primária, veja o símbolo de chave ao lado de “id_cliente”), nm_cliente (que representa o nome do cliente), cd_cnpj (representa o CNPJ do cliente), cd_ie (representa o código da Inscrição Estadual), e cd_IM (Inscrição Municipal).
A tabela contato_cliente possui os seguintes campos: id_contato_clinete (código e chave primária do cadastro do contato do cliente), id_cliente (código do cliente, utilizado para o relacionamento com a tabela de clientes), nm_tipo_contato (forma de contato) e cd_contato (descrição do contato).
Observe que a tabela de cliente está relacionada também com a tabela de pedido, ou seja, um cliente pode efetuar um ou vários pedidos, por isso, dentro da tabela de pedido há também o código do cliente (id_cliente), utilizado para referência. Veja outros códigos nessa mesma tabela.
A tabela de pedido, por sua vez, está relacionada com item_pedido, onde ali constam os produtos a que cada pedido está associado. E a tabela item_pedido está associada à tabela de produtos, para identificar as informações relacionadas aos produtos da empresa.
A palavra INT, presente no modelo, refere-se ao tipo “número inteiro”, que é o tipo de informação relacionada àquele campo. Veja outros tipos de dados que aparecem no modelo.
Veja outros códigos
Nessa mesma tabela há vários outros códigos de outras tabelas utilizadas para referência, como o código do usuário vendedor, o código do endereço de entrega e o código do endereço de cobrança. Todas as referências externas têm o sinal de losango vermelho ao lado do campo correspondente.
VARCHAR, para indicar um texto com até X caracteres (o número entre parêntesis expressa o limite do campo, portanto “varchar (18)” permite até 18 caracteres de texto);
DATE, que indica uma data/hora;
DOUBLE, que indica um número fracionado, como dinheiro, por exemplo.