Slide 3 Modelagem de Bancos de Dados parte 01
3.1 Introdução: Visitando a teoria de Bancos de Dados

Banco de Dados Um banco de dados é uma coleção compartilhada de dados logicamente relacionados, projetada para atender às necessidades informacionais de uma organização. - DATE, C. J. An Introduction to Database Systems. 8. ed. Boston: Addison-Wesley, 2003.
Ou seja, alguns pontos-chave da definição de Date:
“Coleção de dados …” → não é um conjunto de arquivos soltos, mas dados organizados.
“Compartilhada …” → não pertence a apenas um usuário ou aplicação; é usada por vários.
“Dados logicamente relacionados …” → os dados têm um relacionamento semântico, não são apenas agrupamentos arbitrários.
“Projetada para atender necessidades …” → o banco existe para suportar os processos de uma organização (consultas, relatórios, controle, tomada de decisão).


Banco de Dados Relacional Um banco de dados relacional é um banco de dados baseado em um modelo de dados relacional, no qual os dados são representados como um conjunto de relações (tabelas), e cada relação consiste em tuplas (linhas) e atributos (colunas). - SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Database System Concepts. 6. ed. New York: McGraw-Hill, 2010.
Agora, alguns pontos-chave da definição de Abraham Silberschatz :
Base no modelo relacional de Codd (1970).
Dados representados em tabelas (relações).
Cada tabela é composta de tuplas (linhas) e atributos (colunas).
Integridade garantida por restrições (chaves, integridade referencial, domínio de atributos).
Manipulação feita por linguagens relacionais (álgebra relacional, cálculo relacional, SQL).
O Banco de Dados Relacional organiza as informações em tabelas bidiomensionais constituídas de linhas e colunas chamadas e essas tabelas recebem o nome de relações. Cada relação possui um campo-chave que confere identificação exclusiva a cada registro da tabela.
3.2 Modelo Matemático de um Banco de Dados
Considere um Banco de Dados para representar, com consistência Matemática os funcionários e Departamentos de uma Empresa.
3.2.1 Podemos representa-lo matemáticamente utilizando a teoria dos conjuntos
Figure 3.1: Diagrama de Montadoras, Veículos e Proprietários
3.2.2 Então para podemos relacionar estes dois conjuntos (Funcionários e Departamentos) utilizando a Teoria das Funções
\[ \text{Edgard Frank Codd era um matemático tradicional} \\ \text{Considere o conseito de função: } \\ f(x) = Y \\ \text{era dessa forma que ele imaginava relacionamento e } \\ \text{ garantia matemática de CONSISTÊNCIA entre } \\ \text{ elementos de 2 conjuntos de dados diferentes } \]
Figure 3.2: Diagrama de Montadoras, Veículos e Proprietários
Mas vai ficar faltando como representar os atributos nesse modelo (colunas das tabelas):
\[ \begin{array}{c| c | c} \textbf{ Conjunto Funcionários} & \textbf{ Relacionamento Trabalha} & \textbf{Conjunto Departamentos)} \\ \hline FULANO & \quad TRABALHA & \quad RH \\ BELTRANO & \quad TRABALHA & \quad FINANCEIRO \\ CICLANO & \quad TRABALHA & \quad DEIRETORIA \\ \hline \textbf{Total: 3 ELEMENTOS } & \textbf{ CONECTADOS } & \textbf{Total: 3 ELEMENTOS } \end{array} \]
Ainda, é necessário acrescentar algumas regras de integridade a representação;
3.3 Modelo Lógico de Banco de Dados
3.3.1 Modelo Conceitual “Entidade Relacionamento” de Banco de Dados
O Modelo Entidade-Relacionamento (MER), proposto por Peter Chen em 1976, é uma ferramenta fundamental na modelagem de dados. É um modelo de dados de alto nível que descreve a estrutura conceitual de um banco de dados. O Modelo Entidade-Relacionamento (MER) é representado graficamente através de um DER (Diagrama Entidade-Relacionamento).
É utilizado para projetar Bancos de Dados Relacionais a partir de entrevistas onde se descreve as informações que se deseja armazenar de forma consistente. Exemplo:
“Desenhe um diagrama entidade-relacionamento DER contendo as entidades funcionarios e departamentos. A entidade ”funcionários” possui os atributos ”nome” e ”CPF”. A entidade ”Departamentos” possui os atributos ”Nome” e ”sigla”. O atributo ”CPF” é chave primária da entidade ”Funcionários”. O atributo ”sigla” é chave primária da entidade ”Departamentos”. As entidades ”Funcionários” e ”Departamentos” se relacionam através de um relacionamento chamado ”Pertence”.”
Segundo Laudon
Diagrama Entidade/Relacionamento (DER) é uma representação esquemática utilizada para entender as relações entre as tabelas de um banco de dados relacional. [[1] - LAUDON, Kenneth C.; LAUDON, Jane P. *Sistemas de informação gerenciais*. 11. ed. São Paulo: Pearson Education do Brasil, 2010. p. 180.]
3.3.2 Composição e Significado do Diagrama Entidade Relacionamento (DER)
\[ \begin{array}{c| c | c} \textbf{ NOME DO COMPONENTE} & \textbf{Representação Gráfica} & \textbf{ Liguagem Natural (texto)} \\ \hline ENTIDADE & \quad RETÂNGULO & \quad SUBSTÃNTIVO \\ ATRIBUTO & \quad ELÍPSE & \quad ADJETIVO \\ RELACIONAMENTO & \quad LOSÂNGULO & \quad VERBO \\ \hline \textbf{Total: 3 ELEMENTOS } & \textbf{ FORMA GRÁFICA } & \textbf{ FORMA MOFOLÓGICA GRAMATICAL } \end{array} \]
Figure 3.3: Diagrama de Montadoras, Veículos e Proprietários
3.4 Modelo Físico de Banco de Dados
3.4.1 Geração do modelo Físico para aplica-lo ao SGBD (Sistema de Gerenciamento de Banco de Dados):
Uma vez que o modelo conceitual seja gerado, o analista pode mapea-lo para um “modelo físico”. Aqui, cada entidade irá gerar uma tebela, cada atributo irá originar uma coluna pertinente da tabela em questão e cada relacionamento irá mapear chaves primárias e chaves forasteiras nas tabelas interrelacionadas.
\[ \begin{array}{c| c | c} \textbf{Componente Lógico} & \textbf{ Componente Físico} & \textbf{Liguagem Natural (texto)} \\ \hline ENTIDADE & \quad TABELA & \quad SUBSTÃNTIVO \\ ATRIBUTO & \quad COLUNA & \quad ADJETIVO \\ RELACIONAMENTO & \quad CHAVE-ESTRANGEIRA & \quad VERBO \\ \hline \textbf{Diagrama Lógico DER } & \textbf{ FORMA FÍSICA - SGBD } & \textbf{ FORMA MOFOLÓGICA GRAMATICAL ORIGINAL } \end{array} \]
A ferramenta que irá criar as estruturas Físicas (tabelas, colunas, chaves) dentro do Banco de Dados é o Sistema de Gerenciamento de Banco de Dados através da linguagem SQL.

3.4.2 Interagindo com o Modelo Físico - A linguagem SQL (Structured Query Language)
A linguagem SQL foi criada nos laboratórios da IBM em 1974, como interface de manipulação ao Bando de Dados Relacional System-R , atualmente denominado IBM DB2. Os criadores foram engenheiros de sistemas que sucederam o professor Edgard Frank Codd no projeto de Banco de Dados Relacional: Donald Chamberlain e Raymond Boyce.
Donald Chamberlain - Criador da linguagem SQL nos laboratórios da IBM
|
Raymond Boyce - Criador da linguagem SQL nos laboratórios da IBM
|
A lingauem SQL é a ponte com o mundo exterior para um Sistema de Gerenciamento de Banco de Dados (SGBD). Os conjunto de comandos da linguagem SQL são divididos em 3 grandes grupos:
\[ \begin{array}{c| c | c} \textbf{GRUPO} & \textbf{ Comandos} & \textbf{Finalidade} \\ \hline Grupo \ DDL & \quad \ Data \ Definion \ Language & \quad Criar \ estruturas \ de \ dados \\ Grupo \ DML & \quad \ Data \ Manipulation \ Language & \quad Manipular \ dados \ armazenados \\ Grupo \ DCL & \quad \ Data \ Control \ Language & \quad Criar \ Regras \ para \ os \ dados \\ Grupo \ TCL & \quad \ Transaction \ Control \ Language & \quad Criar \ Transações \ para \ os \ dados \\ \hline \textbf{Subconjunto SQL } & \textbf{ Significado } & \textbf{ Conjunto Completo } \end{array} \]
Comandos exemplo:
\[ \begin{array}{c| c } \textbf{GRUPO} & \textbf{ Comandos} \\ \hline Grupo \ DDL & \quad CREATE, \quad ALTER,\quad DROP \ \ \\ Grupo \ DML & \quad SELECT, \quad INSERT, \quad UPDATE, \quad DELETE, \quad JOIN \\ Grupo \ DCL & \quad GRANT, \quad REVOKE \\ Grupo \ TCL & \quad COMMIT, \quad ROLLBACK, \quad SAVEPOINT \\ \hline \textbf{Subconjunto SQL } & \textbf{ Significado } \end{array} \]
O código abaixo escrito em Lingauem SQL padrão transfere para o modelo físico o modelo lógico anterior:
Transformando em SQL - EQUIVALENTE:
-- Exemplo testado e gerado no SGBD Postgres versão 15
-- Tabela Funcionários
CREATE TABLE IF NOT EXISTS "public".funcionarios
(
cpf bigint NOT NULL,
nome varchar(200)
);
-- Tabela Departamentos
CREATE TABLE IF NOT EXISTS "public".departamentos
(
sigla integer NOT NULL,
nome varchar(200)
);
-- Definindo a coluna "cpf" da tabela "funcionários" como chave primária
alter table "public".funcionarios add constraint "chave_primaria_funcionarios" primary key (cpf);
-- Definindo a coluna "sigla"" da tabela "departamentos" como chave primária
alter table "public".departamentos add constraint "chave_primaria_departamentos" primary key (sigla);
-- Gerando a integridade referêncial
-- Importando a chave primária da tabela "departamentos" como "chave estrangeira"
-- na tabela "funcionários"
-- primeiro adiciona-se a coluna estrageira "sigla" que é coluna originalmente
-- pertencente a tabela departamentos
alter table "public".funcionarios add column sigla integer;
-- finalmente conecte a coluna sigla a chave primária da tabela "departamento"
-- criando então uma chave estrageira na tabela "funcionários".
alter table "public".funcionarios add constraint "Chave_estrangeira_Departamento_funcionarios" foreign key (sigla) references "public".departamentos(sigla);3.5 EXEMPLO: REVENDA DE VEÍCULOS MULTI-MARCAS
Uma revenda de veículos multimarcas deseja informatizar seu negócio e precisa de um banco de dados que registre informações sobre veículos, fabricantes e clientes. Cada veículo deve ter código de identificação, modelo, ano de fabricação, cor, preço e chassi. Todo veículo pertence a um fabricante. O fabricante é identificado por um código e deve ter armazenados seu nome e país de origem. A revenda vende veículos para clientes, e cada venda deve registrar a data, o valor da negociação e a forma de pagamento. Um cliente pode comprar mais de um veículo, mas cada veículo só pode ser vendido uma vez. Cada cliente é identificado por um código e deve ter armazenados seu nome, CPF/CNPJ, telefone e endereço.
3.5.1 Passo 1 - Visualizando matemáticamente os dados:
Vejamos como ficaria representar matemáticamente o enunciado acima:
Teoria dos Conjuntos - Ajudaria a organizar e agrupar os dados em conjuntos;
Teoria das Funções - A idéia era fornecer um mecanismo de consistência aos dados de conjuntos diferentes relacionados. Por exemplo, haveria uma função que mapeasse um um elemento do conjunto
veículoa outro elemento do conjuntomontadora.
3.5.1.1 Representação Matemática em Conjuntos e seus Elementos :
Vamos visualizar gráficamente os conjuntos de Marcas, modelos e proprietários :
Figure 3.4: Diagrama de Montadoras, Veículos e Proprietários
3.5.1.2 Gerando os Relacionamentos “Matemáticamente” - (Teoria das Funções, Domínios e Imagens):
Vamos visualizar gráficamente os relacionamentos entre os lementos dos conjuntos Marcas, modelos e proprietários :
Figure 3.5: Diagrama de Montadoras, Veículos e Proprietários
A limitação desta representação gráfica logo fica evidente: por mais que na forma matemática se consiga representar os elementos dos conjuntos e o relacionamento entre eles, a representação não consegue representar os diferentes atributos (características) que os elementos dos conjuntos compartilham.
3.5.2 Modelo Lógico: Modelo Entidade Relacionamento
Vamos agora converter a representação matemática para uma representação lógica utilizando o modelo M.E.R. (modelo entidade-relacionamento ) proposto pelo professor Peter Chen
3.5.2.1 Modelo Entidade Relacionamento
O modelo Entidade Relacionamento consistem em traduzir elementos morfológicos da gramática da língua portuguesa em um texto para um modelo de Banco de dados utilizando a com a seguinte regra de montagem:
| Classe morfológica da palavra | CORRESPONDÊNCIA NO MODELO MATEMÁTICO | CORRESPONDÊNCIA NO MODELO LÓGICO | CORRESPONDÊNCIA NO MODELO FÍSICO-RELACIONAL |
Substantivos |
CONJUNTOS |
ENTIDADES |
TABELAS |
Adjetivos |
N/A | ATRIBUTO |
COLUNAS |
Verbos |
Idéia de “funções y=f(x)” | RELACIONAMENTOS |
CHAVE ESTRANGEIRA |
Tomando como exemplo a revenda de carros:
| Classe morfológica da palavra | |
Substantivos |
VEÍCULOS, FABRICANTES, CLIENTES |
Adjetivos |
Referentes a veículos: Referentes a fabricante: Referentes a cliente: |
Verbos |
Fabricante - clinte - |
3.5.2.2 Modelo Entidade Relacionamento - representação gráfica
| Classe morfológica da palavra | REPRESENTAÇÃO GRÁFICA |
Substantivos |
RETÂNGULOS |
Adjetivos |
ELIPSES |
Verbos |
LOSÂNGULOS |
-- ================================================
-- 1) TRANSFORME AS ENTIDADES E ATRIBUTOS EM
-- TABELAS E COLUNAS
-- ================================================
CREATE TABLE fabricantes
(
codigo_fabricante INTEGER NOT NULL,
nome VARCHAR(100) NOT NULL,
pais_origem VARCHAR(60) NOT NULL
);
CREATE TABLE clientes
(
codigo_cliente INTEGER NOT NULL,
nome VARCHAR(120) NOT NULL,
cpf_cnpj VARCHAR(20) NOT NULL UNIQUE,
telefone VARCHAR(30),
endereco TEXT
);
CREATE TABLE veiculos
(
codigo_veiculo INTEGER NOT NULL,
modelo VARCHAR(100) NOT NULL,
ano_fabricacao INTEGER NOT NULL,
cor VARCHAR(40),
preco NUMERIC(12,2) NOT NULL,
chassi VARCHAR(30) UNIQUE NOT NULL
);
CREATE TABLE vendas
(
codigo_venda INTEGER NOT NULL,
data_venda DATE NOT NULL,
valor_negociado NUMERIC(12,2) NOT NULL,
forma_pagamento VARCHAR(50) NOT NULL
);
-- ================================================
-- 2) TRANSFORME OS ATRIBUTOS CHAVE PRIMÁRIA
-- EM CHAVES-PRIMÁRIAS DAS TABELAS
-- ================================================
ALTER TABLE fabricantes ADD CONSTRAINT chave-primaria_fabricante PRIMARY KEY (codigo_fabricante);
ALTER TABLE clientes ADD CONSTRAINT chave-primaria_cliente PRIMARY KEY (codigo_cliente);
ALTER TABLE veiculos ADD CONSTRAINT chave-primaria_veiculo PRIMARY KEY (codigo_veiculo);
ALTER TABLE vendas ADD CONSTRAINT chave-primaria_venda PRIMARY KEY (codigo_venda);
-- ================================================
-- 3) ADICIONAR NAS TABELAS AS COLUNAS EXTRAS
-- QUE VÃO RECEBER AS CHAVES ESTRANGEIRAS
-- ================================================
-- adicione uma coluna que irá acomodar a chave primária da tabela fabricantes como chave estrangeira
ALTER TABLE veiculos add cloumn codigo_fabricante INTEGER NOT NULL;
-- adicione uma coluna que irá acomodar a chave primária da tabela clientes como chave estrangeira
ALTER TABLE vendas add cloumn codigo_cliente INTEGER NOT NULL;
-- adicione uma coluna que irá acomodar a chave primária da tabela veículos como chave estrangeira
ALTER TABLE vendas add cloumn codigo_veiculo INTEGER NOT NULL UNIQUE;
-- ================================================
-- 3) CRIE AS CHAVES ESTRANGEIRAS QUE FAZEM A LIGAÇÃO
-- DAS TABELAS "LADO N" DO RELACIONAMENTO NO
-- DIAGRAMA ENTIDADE-RELACIONAMENTO COM AS
-- COLUNAS DO LADO 1
-- ================================================
-- utilizando chave estrangeira, faça esta tabela veículos referenciar a tabela fabricantes
ALTER TABLE veiculos
ADD CONSTRAINT chave-estrageira_veiculo_fabricante
FOREIGN KEY (codigo_fabricante)
REFERENCES fabricantes (codigo_fabricante)
ON UPDATE CASCADE
ON DELETE RESTRICT;
-- utilizando chave estrangeira, faça esta tabela vendas referenciar a tabela clientes
ALTER TABLE vendas
ADD CONSTRAINT chave-estrageira_venda_cliente
FOREIGN KEY (codigo_cliente)
REFERENCES clientes (codigo_cliente)
ON UPDATE CASCADE
ON DELETE RESTRICT;
-- utilizando chave estrangeira, faça esta tabela vendas referenciar a tabela veículos
ALTER TABLE vendas
ADD CONSTRAINT chave-estrageira_venda_veiculo
FOREIGN KEY (codigo_veiculo)
REFERENCES veiculos (codigo_veiculo)
ON UPDATE CASCADE
ON DELETE RESTRICT;3.6 VERBOS: Relacionamentos e Cardinalidade
A cardinalidade define quantas ocorrências de uma entidade podem estar associadas a ocorrências de outra entidade em um relacionamento.
Ela é fundamental para entender as regras de negócio do banco de dados e deve estar sempre representada no Diagrama Entidade-Relacionamento (DER).
3.6.1 🔹 Tipos principais de cardinalidade
- Um para Um (1:1)
- Um para Muitos (1:N)
- Muitos para Muitos (N:M)
A seguir, vamos detalhar cada caso.
3.6.2 1. Relacionamento 1:1 (Um para Um)
Um exemplo clássico:
- Cada MARIDO possui uma única ESPOSA.
- Cada ESPOSA pertence a um único MARIDO.
3.7 Entidade Dominante e Entidade Subordinada
No Modelo Entidade-Relacionamento (MER), algumas entidades só existem dependendo da existência de outra.
Nesses casos, usamos os conceitos de Entidade Dominante e Entidade Subordinada.
3.7.1 Definições:
Entidade Dominante (ou Forte):
É uma entidade que existe por si só, sem depender de nenhuma outra.
Ex.: Cliente, Produto, Funcionário.Entidade Subordinada (ou Fraca):
É uma entidade que depende de outra para existir.
Ela não possui chave primária própria completa e precisa da chave da entidade dominante.
Ex.: ItemPedido, Dependente, Parcela.
A entidade subordinada é representada por um losango duplo (relacionamento identificador) em algumas notações, ou simplesmente destacada como entidade fraca.
Outro Exemplo:
3.8 CARDINALIDADE DO MODELO LÓGICO E A CRIAÇÃO DE CHAVES ESTRANGEIRAS NO MODELO FÍSICO-RELACIONAL
Vai ser a cardinalidade que irá ditar em quais tabelas criaremos chaves estrangeiras.
3.9 Referências
CHEN, Peter (1990). Gerenciando Banco de Dados. A Abordagem Entidade-Relacionamento para Projeto Lógico. São Paulo: McGraw-Hill. 80 páginas. ISBN 0-07-460575-5
DATE, C. J. An Introduction to Database Systems. 8. ed. Boston: Addison-Wesley, 2003.
SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Database System Concepts. 6. ed. New York: McGraw-Hill, 2010.
CODD, E. F. A Relational Model of Data for Large Shared Data Banks. Communications of the ACM, New York, v. 13, n. 6, p. 377–387, 1970.
3.10 Exercícios RESOLVIDOS
| Exercício 1 — Universidade |
|---|
![]() |
| Considere uma Universidade que possui vários Cursos. Cada curso tem um nome, uma duração em semestres e um coordenador. A universidade possui Professores, cada um com um nome, título e CPF. Um professor pode ministrar várias disciplinas, e cada disciplina pertence a um único curso. |
|
|
|
|
3.10.0.1 Passo #1 -
Identificar SUBSTANTIVOS no contexto; identificar os ADJETIVOS pertinentes a cada SUBSTANTIVO; identificar os VERBOS de relação entre os substantivos.
Substantivos do contexto: leve-os ao plural |
Adjetivos |
Verbos |
|---|---|---|
UNIVERSIDADE -> UNIVERSIDADES |
|
universidade POSSUI (vários) cursos |
CURSO -> CURSOS |
|
cursos são POSSUÍDOS por (vários) universidades |
PROFESSOR -> PROFESSORES |
|
universidade professor |
DISCIPLINA -> DISCIPLINAS |
|
disciplina disciplina |
3.10.0.2 Passo #2
Criar o MODELO ENTIDADE RELACIONAMENTO (M.E.R.) - Converter SUBSTANTIVO em ENTIDADES; converter ADJETIVOS em ATRIBUTOS e converter VERBOS em RELACIONAMENTOS.
ENTIDADES identificadas:
UNIVERSIDADES,CURSOS,PROFESSORESeDISCIPLINASATRIBUTOS identificados: UNIVERSIDADES [ nome,cnpj ] ; CURSOS [ nome, duração, coordenador, codigo_curso] ; PROFESSORES [ cpf, nome e título] ; DISCIPLINAS [nome e codigo_disciplina]
RELACIONAMENTOS: [universidade-
POSSUI-curso] ; [universidade-POSSUI-professores]; [professor-MINISTRA-disciplina] ; [disciplina-PERTENCE-curso]
3.10.0.4 Passo #4
Identificar os Relacionamentos:
- [universidade-
POSSUI-curso] ; [universidade-POSSUI-professores]; [professor-MINISTRA-disciplina] ; [disciplina-PERTENCE-curso]
| Exemplo 2 — Um Projeto de e-commerce | |
|---|
![]() |
| Um Cliente faz Pedidos em um sistema de e-commerce. Cada cliente tem um nome, endereço e telefone. Os pedidos possuem uma data, um valor total e podem conter vários Produtos. Cada produto tem um nome, uma descrição e um preço. |
|
|
|
|
3.10.0.5 Passo #1 -
Identificar SUBSTANTIVOS no contexto; identificar os ADJETIVOS pertinentes a cada SUBSTANTIVO; identificar os VERBOS de relação entre os substantivos.
Substantivos do contexto: leve-os ao plural |
Adjetivos |
Verbos |
|---|---|---|
CLIENTE -> CLIENTES |
|
(vários) clientes PEDEM (vários) produtos |
PEDIDO -> PEDIDO NÃO É SUBSTABNTIVO, MAS SIM O PARTICÍPIO PASSADO DO VERBO PEDIR. (PEDIR É VERBO !!!) |
|
(vários) clientes PEDEM (vários) produtos |
PRODUTO -> PRODUTOS |
|
(vários) produtos são PEDidos por (vários) clientes |
3.10.0.6 Passo #2
Criar o MODELO ENTIDADE RELACIONAMENTO (M.E.R.) - Converter SUBSTANTIVO em ENTIDADES; converter ADJETIVOS em ATRIBUTOS e converter VERBOS em RELACIONAMENTOS.
Normalmente apenas as ENTIDADES levam atributos. Quando aparece um relacionamento N-N entre duas entidades, também podem aparecer atributos atrelados aos relacionamentos (como é o caso de PEDIDO aqui).
ENTIDADES identificadas:
CLIENTES,PRODUTOSATRIBUTOS identificados: CLIENTES [ nome, endereco, telefone, cpf] ; PRODUTOS [ nome, descricao, preco, cod_produto] ; PEDIDO[data, valor_total]
RELACIONAMENTOS: [cliente-
PEDE-produto] ; [produto-PEDIDO-cliente];
3.10.0.7 Passo #3
Criar um DIAGRAMA ENTIDADE-RELACIONAMENTO (D.E.R.) com as informações levantadas:
| Exercício 3 — Hospital |
|---|
![]() |
| Um Hospital registra Pacientes, cada um com nome, idade, endereço e telefone. Os pacientes podem realizar várias Consultas com Médicos. Cada médico possui um CRM, um nome e uma especialidade. Durante a consulta, o médico pode prescrever Receitas, que possuem medicação e dosagem. |
|
|
|
|
3.10.0.8 Passo #1 -
Identificar SUBSTANTIVOS no contexto; identificar os ADJETIVOS pertinentes a cada SUBSTANTIVO; identificar os VERBOS de relação entre os substantivos.
Substantivos do contexto: leve-os ao plural |
Adjetivos |
Verbos |
|---|---|---|
HOSPITAL -> HOSPITAIS |
|
(explícito) hospital (implícito) hospital |
PACIENTE -> PACIENTES |
|
pacientes são (vários) pacientes (vários) pacientes |
MÉDICO -> MEDICOS |
|
(vários) médico(s) (vários) médico(s) |
RECEITA ?? -> RECEITAR é VERBO |
|
médico (vários) paciente(s) |
CONSULTA ?? -> CONSULTAR é VERBO |
|
(vários) pacientes(s) CONSULTA(M) (vários) médico(s) |
3.10.0.9 Passo #2
Criar o MODELO ENTIDADE RELACIONAMENTO (M.E.R.) - Converter SUBSTANTIVO em ENTIDADES; converter ADJETIVOS em ATRIBUTOS e converter VERBOS em RELACIONAMENTOS.
ENTIDADES identificadas:
HOSPITAIS,PACIENTES,MEDICOSATRIBUTOS identificados: HOSPITAIS [ nome,cnpj ] ; PACIENTES [ nome, idade, endereco, telefone, cpf] ; MEDICOS [ crm, nome e especialidade] ;
RELACIONAMENTOS: [medico-
consulta-paciente] ; [medico-receita-paciente]; [hospital-registra-paciente] ; [hospital-POSSUI-medicos]
3.10.0.10 Passo #3
Criar um DIAGRAMA ENTIDADE-RELACIONAMENTO (D.E.R.) com as informações levantadas:
3.10.2 📝 Lista de Exercícios – Modelo Entidade-Relacionamento (MER)
3.10.2.1 Exercício 1 – Cliente e CPF (1:1)

Considere um projeto de Banco de Dados de uma escola. Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Cada Diretor gerencia exatamente uma Escola, e cada Escola só pode estar associada a um único Diretor. Com base nestas informações:
- Identifique entidades, atributos e relacionamento.
- Represente o MER com cardinalidade 1:1.
3.10.2.2 Exercício 2 – Cliente e Pedidos (1:N)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Cliente pode fazer vários Pedidos, mas cada Pedido pertence a apenas um Cliente.
- Liste as entidades e atributos.
- Defina o relacionamento e a cardinalidade.
- Monte o DER.
3.10.2.3 Exercício 3 – Alunos e Disciplinas (N:M)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Aluno pode se matricular em várias Disciplinas, e cada Disciplina pode ter vários Alunos.
- Identifique entidades e atributos. - Qual entidade associativa deve ser criada? - Desenhe o DER com a entidade associativa.
3.10.2.4 Exercício 4 – Funcionário e Dependentes (Entidade Fraca)

Considere um projeto de Banco de Dados. Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Cada Funcionário pode ter vários Dependentes. Um Dependente não existe sem um Funcionário.
- Identifique a entidade forte e a entidade fraca.
- Defina atributos e chaves.
- Monte o DER indicando a dependência existencial.
3.10.2.5 Exercício 5 – Pedido e Itens de Pedido (Entidade Associativa + Fraca)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Pedido contém vários Itens, mas cada Item está sempre vinculado a apenas um Pedido.
- Qual entidade é dominante e qual é subordinada?
- Identifique atributos das duas entidades.
- Represente o DER com cardinalidade 1:N.
3.10.2.6 Exercício 6 – Médicos e Consultas (1:N)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Médico pode realizar várias Consultas, mas cada Consulta está associada a apenas um Médico.
- Identifique entidades e atributos.
- Desenhe o DER.
- Indique as cardinalidades.
3.10.2.7 Exercício 7 – Professor e Departamento (1:1)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Cada Professor dirige apenas um Departamento, e cada Departamento tem apenas um Professor responsável.
- Identifique entidades, atributos e relacionamento.
- Defina cardinalidade 1:1 no DER.
3.10.2.8 Exercício 8 – Livros e Autores (N:M)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Livro pode ter vários Autores, e cada Autor pode escrever vários Livros.
- Identifique as entidades e atributos.
- Qual entidade associativa deve ser criada?
- Monte o DER em notação conceitual.
3.10.2.9 Exercício 9 – Biblioteca (Entidades Fortes e Fracas)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
Um Livro pode ter vários Exemplares. Um Exemplar só existe se estiver associado a um Livro.
- Identifique entidades fortes e fracas.
- Defina atributos (Livro: título, ano; Exemplar: código_exemplar, status).
- Monte o DER com a dependência existencial.
3.10.2.10 Exercício 10 – Empresa, Funcionário e Projeto (Misto 1:N e N:M)

Considere um projeto de Banco de Dados.Faça a modelagem utilizando o Modelo Entidade-Relacionamento de Peter Chen (M.E.R.).
- Uma Empresa possui vários Funcionários.
- Cada Funcionário pode participar de vários Projetos, e cada Projeto pode ter vários Funcionários.
- Identifique todas as entidades, atributos e relacionamentos.
- Determine cardinalidades corretas (Empresa–Funcionário 1:N, Funcionário–Projeto N:M).
- Crie o DER completo.




