Você está na página 1de 43

CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/

AUDITORIA E FISCALIZAÇÃO - GERAL – CGU


PROFa. PATRÍCIA LIMA QUINTÃO

Aula 1 – Banco de Dados e Sistemas de Gerenciamento de Banco de


Dados: Conceitos Básicos, Características e Modelagem
Olá pessoal, meus cumprimentos!!!
Sejam bem-vindos ao curso de Conhecimentos de Banco de Dados, com
foco no concurso para a área: Auditoria e Fiscalização, Campo de
Atuação: Geral, da Controladoria-Geral da União - CGU.
Cabe destacar que estamos juntos para buscar o 100% da prova e a tão
sonhada aprovação. Para isso, continuarei repassando a vocês o máximo de
minha experiência como concurseira e professora, já que “melhor do que
aprender o caminho é aprender os atalhos”. Estamos aqui para isso,
ensinar os atalhos, os macetes, tentar encurtar essa longa trajetória, e
ajudá-los a chegar ao tão almejado objetivo.
Que Deus os abençoe, bom proveito e mãos à obra agora em nossa aula!
Profa Patrícia Lima Quintão

A seguir realçamos conceitos que complementam a nossa Aula 0 e


merecem toda a sua atenção!! Vamos lá!

Conceitos Básicos Relacionados a Banco de Dados

Dado x Informação x Conhecimento


Importante!!
O que é um Dado? É um registro de alguma entidade. Um nome é um
dado, uma foto é um dado, 134 é um dado, 5 é um dado, etc.
Já a informação é um dado depois de processado, é uma contextualização de
um dado... Como assim? “5” é um dado, mas e se eu disser o seguinte: “No
dia 5 não haverá aula!!”. Nesse caso, o 5 passou a ter sentido (ou passou a ter
“contexto”) e agora é uma informação! Complementando, informações são
conjuntos de dados significativos e úteis a seres humanos em
processos como o de tomada de decisões.
Na figura seguinte, dados brutos registrados por um caixa de supermercados
podem ser processados e organizados de modo a produzir informações úteis,
tal como o total de unidades de detergentes vendidas ou a receita total de
vendas do detergente para determinada loja ou território de vendas.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 1 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Fonte: (O´BRIEN, 2006)

E conhecimento? Setzer (2001), em http://www.ime.usp.br/~vwsetzer/dado-


info.html, destaca que o conhecimento pode ser considerado como “uma
abstração interior, pessoal, de algo que foi experimentado, vivenciado,
por alguém”.
Conforme destaca Rob e Coronel (2011) o conhecimento implica familiaridade,
consciência e compreensão das informações conforme se apliquem a um
ambiente. Uma característica fundamental do conhecimento é que o "novo"
conhecimento pode ser obtido a partir do "antigo". A seguir alguns pontos
fundamentais:
• Os dados constituem os blocos de construção das informações.
• As informações são produzidas pelo processamento de dados e são
utilizadas para revelar o significado dos dados.
• Informações precisas, relevantes e rápidas são a chave para a
boa tomada de decisões.
• A boa tomada de decisão é a chave para a sobrevivência de uma
organização no ambiente global.
Vale destacar que informações rápidas e úteis exigem dados precisos. Esses
dados devem ser gerados de forma adequada e armazenados em um formato
de fácil acesso. E, como qualquer recurso básico, o ambiente de dados deve ser
gerenciado com cuidado. O gerenciamento de dados é uma disciplina que
foca na geração, no armazenamento e na recuperação adequada dos dados.
Diante do papel crucial executado pelos dados, você não deve estar surpreso
que o gerenciamento de dados seja uma atividade central para qualquer negó-
cio, ou organização (Rob e Coronel, 2011).
Em geral, o gerenciamento eficiente de dados exige a utilização de um banco de
dados computacional.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 2 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

O Que é um Banco de Dados?


Um banco de dados é uma estrutura computacional
compartilhada e integrada que armazena um conjunto de:
• Dados do usuário final, ou seja, fatos brutos de
interesse para esse usuário.
• Metadados, ou dados sobre dados, por meio dos
quais os dados do usuário final são integrados e gerenciados.
Os metadados fornecem uma descrição das características dos dados e do
conjunto de relacionamentos que ligam os dados encontrados no banco de
dados. Por exemplo, o componente de metadados armazena informações
como o nome da cada elemento de dados, o tipo de valor (numérico, datas
ou texto) armazenado, a possibilidade ou não de deixar esse elemento vazio, e
assim por diante. Portanto, os metadados fornecem informações que
complementam e expandem o valor e a utilização dos dados. Em resumo, os
metadados trazem uma representação mais completa dos dados no
banco. Dadas as características dos metadados, é possível termos a definição
de um banco de dados como "um conjunto de dados autodescritivos'.
Lembrete!
Dados são fatos em sua forma primária, os quais podem ser armazenados,
como, por exemplo: nome, telefone e endereço. Estes dados ou fatos
organizados de maneira significativa e relacionados formam uma informação,
como por exemplo: os dados das peças em estoque. Assim é possível obter
uma lista de peças em falta.
Banco de Dados
• Sabendo o que são dados e informações é possível definir os Bancos de
Dados como um conjunto de dados devidamente relacionados capazes de
apresentar uma informação.
• Coleção de dados interrelacionados, armazenados de forma centralizada ou
distribuída, com algum significado inerente, isto é, informações de interesse
de uma ou mais organizações.
• Um banco de dados é projetado, construído e povoado por dados,
atendendo a uma proposta específica. Possui um grupo de usuários definido
e algumas aplicações preconcebidas, de acordo com o interesse desse grupo
de usuários.
Uso e abrangência
Nas atividades diárias necessitamos de aplicações que envolvem bancos de
dados, como: bancos; reservas em hotéis ou companhias aéreas; catálogo
informatizado em bibliotecas; assinaturas de revistas; compras em
supermercados; livrarias virtuais.
Por Que Usar um Banco de Dados?
Comparando-se ao trabalho manual de armazenar dados:

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 3 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

- densidade: não há necessidade de volume de papéis;


- velocidade: a recuperação e modificação dos dados é realizada de maneira
muito rápida;
- atualidade: informações precisas e atualizadas estão disponíveis a qualquer
momento;
- proteção: os dados podem ficar melhor protegidos a perdas não intencionais
e acesso ilegal;
- controle centralizado dos dados operacionais:
• redundância dos dados (dados armazenados de forma desnecessária em
locais diferentes) evitada -> desperdício de espaço evitada;
• inconsistência evitada -> informações incorretas evitadas, através da
remoção de redundâncias ou da redundância controlada (propagação de
atualizações);
• compartilhamento dos dados por várias aplicações;
• permite a aplicação de restrições de segurança;
• mantém a integridade dos dados, através da geração de regras de
integridade;
• suporte a transações (unidade lógica de trabalho) é oferecido;
• padrões (documentação, de instalação, etc.) podem ser impostos.
Principais Tipos de Banco de Dados
O SGBD pode dar suporte a muitos tipos de bancos de dados, que podem ser
classificados de acordo com o número de usuários, localização(ões), e o tipo e
a extensão do uso esperado.
i)Quanto ao número de usuários (monousuário/multiusuário)
O número de usuários determina se o banco de dados é classificado
como monousuário (de um único usuário) ou multiusuário.
• Bancos de dados monousuário dão suporte a apenas um usuário por
vez. Em outras palavras, se o usuário A estiver utilizando o banco, os
usuários B e C devem esperar até que o A termine. Um banco de dados
monousuário executado em um computador pessoal é chamado banco de
dados de desktop.
• Por outro lado, um banco de dados multiusuário dá suporte a vários
usuários simultaneamente. Quando esse suporte cobre um número
relativamente pequeno de usuários (em geral menor que cinquenta) ou um
departamento específico de uma organização, o banco é chamado de banco
de dados de grupo de trabalho. Já quando é utilizado por uma
organização inteira, com suporte a muitos usuários (mais de cinquenta,
normalmente centenas) em vários departamentos, o banco é conhecido
como banco de dados empresarial.
ii)Quanto à localização de dados (Centralizado/Distribuído)

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 4 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

A localização também pode ser utilizada para classificar o banco de


dados.
• Por exemplo, um banco que dê suporte a dados localizados em um único local
é chamado de banco de dados centralizado.
• Já um que dê suporte a dados distribuídos por vários locais diferentes é
chamado de banco de dados distribuído.
iii)Quanto à utilização de dados (Banco de Dados
Operacional/DataWarehouse/Bancos de Dados em XML,...)
Atualmente, o modo mais popular de classificação baseia-se em como os
bancos de dados serão utilizados e na sensibilidade ao tempo das
informações nele coletadas. Por exemplo, transações como vendas,
pagamentos e aquisições de suprimentos de produtos ou serviços refletem
operações diárias fundamentais. Essas transações devem ser registradas de
modo preciso e imediato.
Um banco projetado principalmente para dar suporte às operações diárias de
uma empresa é classificado como banco de dados operacional (às vezes
referido como transacional ou de produção).
Por outro lado, os data warehouses (armazém de dados) focam na
armazenagem dos dados utilizados para gerar informações necessárias à
tomada de decisões táticas e estratégicas. A maioria dos dados de suporte a
decisões baseiam-se em dados históricos obtidos de bancos de dados
operacionais. Além disso, o data warehouse pode armazenar dados
provenientes de muitas fontes. Para facilitar a recuperação desses dados, a
estrutura do data warehouse difere muito de um banco operacional ou
transacional.
Os bancos de dados também podem ser classificados de modo a
refletir até que grau seus dados são estruturados.
• Dados não estruturados são aqueles que existem em seu estado original
(bruto), ou seja, no formato em que foram coletados. Portanto, estão em
um formato que não possibilita o processamento que produz informações.
• Dados estruturados são o resultado da obtenção de dados não estru-
turados e de sua formatação (estruturação) visando facilitar o
armazenamento, a utilização e a geração de informações. A estrutura
(formato) é aplicada com base no tipo de processamento que se deseja
executar nos dados. Alguns dados podem não estar prontos (não
estruturados) para determinados tipos de processamento, mas podem
estar prontos (estruturados) para outros tipos. Por exemplo, o valor de
dados 37890 pode se referir a um CEP, um valor de vendas ou um código
de produto. Se representar um CEP ou um código de produto e for
armazenado como texto, não será possível executar cálculos matemáticos
com ele. Por outro lado, se esse valor representar uma transação de
vendas, será necessário formatá-lo como numérico.
Para ilustrar o conceito de estrutura, imagine uma pilha de faturas impressas
em papel. Caso deseje simplesmente armazená-las como imagens para
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 5 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

recuperação e exibição futura, é possível escaneá-las e salvá-las em formato


gráfico. Por outro lado, se desejar obter informações como vendas mensais
totais e médias, esse armazenamento gráfico não seria útil. Em vez disso, é
possível armazenar os dados das faturas em um formato de planilha
(estruturado) de modo a permitir a execução dos cálculos necessários. Na
verdade, em sua maioria, os dados que encontramos são mais bem
classificados como semiestruturados.
• Dados semiestruturados são aqueles que já foram parcialmente
processados. Por exemplo, olhando-se uma página comum da web, os
dados são apresentados em um formato pré-organizado para transmitir
alguma informação.
Os tipos de bancos de dados mencionados até aqui focam no
armazenamento e gerenciamento de dados altamente estruturados.
No entanto, as corporações não se limitam ao uso de dados estruturados,
também utilizam dados semiestruturados e não estruturados. Basta pensar nas
informações muito valiosas que podem ser encontradas em e-mails da
empresa, memorandos, documentos como procedimentos e regras, conteúdos
de páginas da web e assim por diante.
As necessidades de armazenamento e gerenciamento de dados não
estruturados e semiestruturados estão sendo atendidas pela nova geração de
bancos de dados em XML. A Linguagem de Marcação Extensível (XML, sigla
em inglês para Extensible Markup Language) é uma linguagem especial utilizada
para representar e manipular elementos de dados em formato textual. Os
bancos de dados em XML dão suporte ao armazenamento e gerenciamento
de dados semiestruturados em XML. A tabela seguinte compara os recursos de
vários sistemas de gerenciamento de bancos de dados conhecidos.

Figura. Tipos de banco de dados


Fonte: Rob e Coronel, 2011

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 6 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Sistemas de Gerenciamento de Banco de Dados (SGBDs)


Um banco de dados pode ser criado e mantido por um conjunto de aplicações
desenvolvidas especialmente para esta tarefa ou por um Sistema Gerenciador
de Banco de Dados ou Sistema de Gerenciamento de Banco de Dados.
O sistema de gerenciamento de bancos de dados (SGBD) é um conjunto
de programas que gerenciam a estrutura do banco de dados e controlam o
acesso aos dados armazenados. Até certo ponto, o banco de dados se
assemelha a um arquivo eletrônico com conteúdo muito bem organizado com
a ajuda de um software poderoso, conhecido como sistema de gerenciamento
de banco de dados.
SGBD: Conjunto de software para gerenciar um BD, que provê
armazenamento e acesso multiusuário eficiente a uma grande quantidade de
dados armazenados.

Figura. O SGBD gerencia a interação entre o usuário final e o banco de dados


Fonte: Rob e Coronel, 2011.

Os SGBDs são programas capazes de criar bancos de dados, e a partir


daí realizar uma série de operações básicas, tais como: inclusão,
pesquisa, atualização, impressão e ordenação.

Outro conceito interessante sobre SGBD pode ser encontrado no Wikipédia:


...o conjunto de programas de computador (softwares)
responsáveis pelo gerenciamento de uma base de dados.
Os Sistemas Gerenciadores de Bancos de Dados surgiram para atender à
necessidade de armazenamento e de recuperação de grandes volumes de
informações, propiciando um ambiente seguro e adequado.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 7 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

O SGBD ajuda a tornar o gerenciamento de dados mais eficiente e


eficaz. Por exemplo, fornece vantagens como (Rob e Coronel, 2011):
• Aprimoramento do compartilhamento de dados. O SGBD ajuda a
criar um ambiente em que os usuários finais tenham melhor acesso a
dados em maior quantidade e mais bem gerenciados. Esse acesso
possibilita que os usuários finais respondam rapidamente a mudanças
em seu meio.
• Aprimoramento da segurança de dados. Quanto mais usuários
acessam os dados, maiores são os riscos de falhas de segurança. As
empresas investem consideráveis quantidades de tempo, esforços
e dinheiro para garantir que seus dados sejam utilizados
adequadamente. O SGBD fornece um modelo para melhor aplicar as
políticas de privacidade e segurança de dados.
• Melhoria na integração dos dados. O acesso mais amplo a dados bem
gerenciados promove uma perspectiva integrada das operações da
organização e uma visualização mais clara do panorama geral.
• Minimização da INCONSISTÊNCIA dos dados. A inconsistência dos
dados ocorre quando diferentes versões dos mesmos dados aparecem
em locais diferentes. Por exemplo, quando o departamento de vendas de
uma empresa armazena o nome de uma representante de vendas como
"Gris Silva" e o departamento de recursos humanos armazena o nome da
mesma pessoa como "Cristina G. Da Silva". Esse problema é reduzido por
meio de um adequado projeto de banco de dados.
• Aprimoramento do acesso aos dados. O SGBD torna possível obter
respostas rápidas a consultas ad hoc (uma consulta que não pode ser
previamente determinada). Da perspectiva do banco de dados, uma
consulta é uma solicitação específica de manipulação de dados, emitida
ao SGBD - por exemplo, ler ou atualizar os dados. Colocando de modo
simples, uma consulta é uma pergunta e uma consulta ad hoc é uma
consulta eventual. O SGBD retorna uma resposta (chamada conjunto de
resultados de consulta) à aplicação. Por exemplo, os
usuários finais, ao lidarem com grandes quantidades de dados de vendas,
podem querer respostas rápidas a perguntas (consultas ad hoc) como:
- Qual é o volume em valor de vendas por produto durante os últimos
seis meses?
- Qual é o número de bônus de vendas de cada um de nossos
vendedores durante os últimos três meses?
• Aprimoramento da tomada de decisão. Dados mais bem
gerenciados e com acesso aprimorado tornam possível gerar
informações de melhor qualidade sobre as quais se podem basear
melhores decisões.
• Aumento de produtividade do usuário final. A disponibilidade de
dados combinada com as ferramentas que os transformam em
informações úteis capacitam os usuários finais a tomar decisões mais

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 8 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

rápidas e confiáveis que podem fazer a diferença entre o sucesso e o


fracasso na economia global.
• Tolerância a Falhas: Um Sistema Gerenciador de Banco de Dados deve
fornecer recursos para recuperação de falhas tanto de software quanto
de hardware.
• Restrição a Acesso não Autorizado: Um Sistema Gerenciador de
Banco de Dados deve fornecer um subsistema de autorização e
segurança, o qual é utilizado pelo DBA para criar contas e especificar as
restrições destas contas. O controle de restrições se aplica tanto ao
acesso aos dados quanto ao uso de softwares inerentes ao Sistema
Gerenciador de Banco de Dados.
As vantagens da utilização de um SGBD não se limitam aos itens aqui
listados. Na verdade, você descobrirá muito mais vantagens ao conhecer os
detalhes técnicos dos bancos de dados e seu projeto adequado.

Funções Básicas de um Sistema Gerenciador de Banco de Dados


Como todo e qualquer aplicativo os sistemas gerenciadores de bancos de
dados dispõem de funções que são compartilhadas por qualquer tipo de
sistema gerenciador de banco de dados, independente de seu fabricante.

Dentre elas, destacam:


• Proporcionar maior abstração, isolando o usuário dos pormenores internos
de como os dados estão armazenados;
• Rapidez no acesso às informações;
• Proporcionar independência dos dados em relação aos programas de
recuperação, cuja estrutura física de armazenamento independe da
estratégia de acesso;
• Compartilhar a base de dados entre vários aplicativos, em que diferentes
tipos de interfaces atendem às necessidades de distintos usuários;
• Maior facilidade de realizar cópias de segurança;
• Proporcionar a comunicação diretamente com um software ou servidor;
• Proporcionar integridade dos dados.

Arquitetura de um Sistema Gerenciador de Banco de Dados


Atualmente, existem várias tendências para arquitetura de Banco de Dados
nas mais diversas direções. A arquitetura mais conhecida é a ANSI/SPARC,
fundamentada em TRÊS NÍVEIS em que cada um desses níveis corresponde
às abstrações dos dados armazenados no banco de dados.
Assim, o propósito geral de um SGBD é proporcionar aos usuários uma visão
abstrata dos dados. Isto é, o sistema omite certos detalhes de como os
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 9 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

dados são armazenados e mantidos. Isto é conseguido definindo-se diversos


níveis de abstração pelos quais o Banco de Dados (BD) pode ser visto.
A abstração dá-se em três níveis:
• Nível de Visões do Usuário (Externo): é o nível mais alto de abstração,
que descreve partes do banco de dados, de acordo com as necessidades de
cada usuário, individualmente. Em outras palavras, descreve o modo pelo
qual os dados são vistos pelos usuários do sistema gerenciador de banco de
dados.
• Nível Lógico (Conceitual): descreve QUAIS dados estão armazenados e
seus relacionamentos. Neste nível, o banco de dados é descrito através de
estruturas relativamente simples, que podem envolver estruturas
complexas no nível físico.
• Nível Físico (Interno): nível mais baixo de abstração. Descreve COMO
os dados estão realmente armazenados, englobando estruturas
complexas de baixo nível que são descritas em detalhe.

Figura. Arquitetura de Três Níveis (ANSI/SPARC)

Partindo da arquitetura proposta, vamos ao estudo de alguns conceitos


relacionados importantes para a prova:

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 10 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

i)Abstração de Dados: um Sistema Gerenciador de Banco de Dados é


composto de uma coleção de arquivos interrelacionados e de um conjunto de
programas que permitem aos usuários realizar o acesso a estes arquivos e
modificar os mesmos. O grande objetivo de um sistema de banco de dados é
prover aos usuários uma visão abstrata dos dados. Isto é, o sistema omite
certos detalhes de como os dados são armazenados e mantidos. No
entanto, para que o sistema possa ser utilizado, os dados devem ser buscados
de forma eficiente. Este conceito tem direcionado o projeto de estrutura de
dados complexas para a representação de dados em um banco de dados. Uma
vez que muitos dos usuários de banco de dados não são treinados para
computação, a complexidade está escondida desses usuários através de
diversos níveis de abstração que simplificam a interação do usuário com o
sistema.

ii)Independência de dados: é a capacidade de modificar a definição dos


esquemas em determinado nível, sem afetar o esquema do nível superior.
Existem dois níveis de independência dos dados:
o Independência de dados física: modifica o esquema físico sem
que, com isso, qualquer programa aplicativo precise ser reescrito (As
modificações no nível físico são ocasionalmente necessárias para
aumento de desempenho).
o Independência de dados lógica: modifica o esquema lógico sem
que, com isso, qualquer programa aplicativo precise ser reescrito. As
modificações no nível conceitual são necessárias quando a estrutura
lógica do banco de dados é alterada (por exemplo, a adição de contas
de bolsas de mercado num sistema bancário).

Figura. Independência de dados

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 11 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

A independência lógica dos dados é mais difícil de ser alcançada do que a


independência física, porém os programas são bastante dependentes da
estrutura lógica dos dados que eles acessam.
Este conceito de independência dos dados é similar em muitos aspectos ao
conceito de tipos abstratos de dados em modernas linguagens de
programação. Ambos escondem detalhes de implementação do usuário. Isto
permite ao usuário concentrar-se na estrutura geral em vez de detalhes de
baixo nível de implementação.

iii)Dicionário de Dados: é uma coleção de metadados que contêm


definições e representações de elementos de dados. Dentro do contexto de
sistemas gerenciadores de bancos de dados, um dicionário de dados é um
grupo de tabelas, habilitadas apenas para leitura ou consulta, ou seja, é uma
base de dados, propriamente dita, que entre outras coisas, mantém as
seguintes informações:

- Definição precisa sobre elementos de dados;


- Perfis de usuários, papéis e privilégios;
- Descrição de objetos;
- Integridade de restrições;
- Stored procedures e gatilhos;
- Estrutura geral da base de dados;
- Informação de verificação;
- Alocações de espaço.

Um dos benefícios de um dicionário de dados bem preparado é a consistência


entre itens de dados através de diferentes tabelas. Por exemplo, diversas
tabelas podem conter números de telefones. Utilizando uma definição de um
dicionário de dados bem feito, o formato do campo 'número de telefone'
definido com "(99)9999-9999" deverá ser obedecido em todas as tabelas que
utilizarem esta informação.
Os dicionários de dados são gerados, normalmente, separados do
Modelo de Dados visto que estes últimos costumam incluir complexos
relacionamentos entre elementos de dados.

iv)Modelo de Dados: uma das principais características da abordagem de


banco de dados é que fornece alguns níveis de abstração de dados omitindo ao
usuário final detalhes de como estes dados são armazenados. Um modelo de
dados é um conjunto de conceitos que podem ser utilizados para descrever a
estrutura lógica e física de um banco de dados. Por estrutura podemos

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 12 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

compreender o tipo dos dados, os relacionamentos e as restrições que podem


recair sobre os dados.

Figura. Modelo Entidade-Relacionamento


Os modelos de dados podem ser basicamente de dois tipos:
- Alto nível: ou modelo de dados conceitual, que fornece uma visão
mais próxima do modo como os usuários visualizam os dados realmente;
- Baixo nível: ou modelo de dados lógico ou físico, que fornece uma
visão mais detalhada do modo como os dados estão realmente
armazenados no computador.

v) Esquemas e Instâncias: em qualquer modelo de dados utilizado, é


importante distinguir a descrição do banco de dados do banco de dados por si
próprio. A descrição de um banco de dados é chamada de esquema de um
banco de dados e é especificada durante o projeto do banco de dados.
Geralmente, poucas mudanças ocorrem no esquema do banco de dados. Os
dados armazenados em um determinado instante do tempo formam um
conjunto chamado de instância do banco de dados. A instância altera toda
vez que uma alteração no banco de dados é feita.
O Sistema Gerenciador de Banco de Dados é responsável por garantir que toda
instância do banco de dados satisfaça ao esquema do banco de dados,
respeitando sua estrutura e suas restrições.

vi)As Linguagens para Manipulação de Dados: Para a definição dos


esquemas conceitual e interno pode-se utilizar uma linguagem chamada DDL
(Data Definition Language - Linguagem de Definição de Dados). O Sistema
Gerenciador de Banco de Dados possui um compilador DDL que permite a
execução das declarações para identificar as descrições dos esquemas e para
armazená-las no catálogo do Sistema Gerenciador. A DDL é utilizada onde a
separação entre os níveis interno e conceitual não é muito clara. Onde a
separação entre os níveis conceitual e interno são bem claras, é utilizada outra
linguagem, a SDL (Storage Definition Language - Linguagem de Definição de

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 13 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Armazenamento) para a especificação do esquema interno. A especificação do


esquema conceitual fica por conta da DDL.
Em Sistemas Gerenciadores de Bancos de Dados que utilizam a arquitetura de
três esquemas ou nível, é necessária a utilização de mais uma linguagem para
a definição de visões, a VDL (Vision Definition Language - Linguagem de
Definição de Visões).
Uma vez que o esquema esteja compilado e o banco de dados esteja populado,
utiliza-se uma linguagem para fazer a manipulação dos dados, a DML (Data
Manipulation Language – Linguagem de Manipulação de Dados).

vii)Estrutura de um SGBD

Figura. Estrutura de um SGBD

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 14 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Sistema de Banco de Dados


Para completar nossa definição inicial chamaremos o banco de dados e o
software SGBD, juntos, de Sistema de Banco de Dados.
O termo sistema de banco de dados refere-se a uma organização de
componentes que define e regula a coleta, o armazenamento, o gerenciamento
e a utilização de dados em um ambiente de banco de dados. Do ponto de vista
do gerenciamento real, o sistema de banco de dados é composto de cinco
partes principais, apresentadas na figura seguinte: hardware, software,
pessoas, procedimentos e dados.

Figura. Sistema de Banco de Dados

 Hardware. O hardware refere-se a todos os dispositivos físicos do


sistema, como, por exemplo, computadores (microcomputadores,
estações de trabalho, servidores e supercomputadores), dispositivos de
armazenamento, impressoras, dispositivos de rede (hubs, switches,
roteadores, fibra óptica) e outros dispositivos (caixas automáticos,
leitores de ID etc.).
 Software. Embora o software identificado de imediato seja o próprio
SGBD, o funcionamento completo do sistema de banco de dados
necessita de três tipos de softwares: sistema operacional, SGBD e
aplicativos e utilitários.
o O sistema operacional gerencia todos os componentes de
hardware e possibilita que os outros softwares sejam executados
nos computadores. Os exemplos de sistema operacional incluem o
Microsoft Windows, o Linux, o UNIX, etc.
o O SGBD gerencia o banco de dados em um sistema de banco de
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 15 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

dados. Alguns exemplos desse tipo de software são o Microsoft


SQL Server, o Oracle da Oracle Corporation, o MySQL da MySQL
AB e o DB2 da IBM.
o Os aplicativos e utilitários são utilizados para acessar e
manipular dados no SGBD e gerenciar o ambiente computacional
no qual ocorre o acesso e a manipulação de dados. Os aplicativos
são usados com mais frequência para acessar os dados
encontrados no banco de dados e gerar relatórios, tabelas e outras
informações que facilitem a tomada de decisões. Os utilitários são
as ferramentas de software utilizadas para ajudar no
gerenciamento dos componentes computa cionais do sistema de
bancos de dados. Por exemplo, todos os principais fornecedores de
SGBD atualmente fornecem interfaces gráficas de usuário (GUIs)
para ajudar a criar estruturas de bancos de dados, controlar seu
acesso e monitorar suas operações.
 Pessoas. Esse componente inclui todos os usuários do sistema de
banco de dados. Com base na função de trabalho principal, é possível
identificar cinco tipos de usuários em um sistema: administradores de
sistemas, administradores de bancos de dados, projetistas de bancos de
dados, analistas e programadores de sistemas, e usuários finais.
 Procedimentos. Os procedimentos são as instruções e regras que
orientam o projeto e a utilização do sistema de banco de dados. Os
procedimentos são um componente fundamental, embora às
vezes esquecido, do sistema. Executam um papel importante na
empresa, pois aplicam os padrões pelos quais os negócios são
conduzidos dentro da organização e em relação aos clientes. Também
são utilizados para garantir que haja um modo organizado de monitorar
e auditorar tanto os dados que entram no banco como as informações
geradas pela utilização desses dados.
 Dados. A palavra dados cobre o conjunto de fatos armazenados no
banco de dados. Como eles são o material bruto a partir do qual as
informações são geradas, a definição de quais dados devem
ser inseridos no banco e como esses dados devem ser organizados
constitui uma parte vital do trabalho do projetista.

Um sistema de banco de dados adiciona uma nova dimensão à estrutura


de gerenciamento de uma organização. A complexidade dessa estrutura
depende do tamanho da organização, de suas funções e de sua cultura
corporativa. Portanto, os sistemas de banco de dados podem ser criados e
gerenciados em diferentes níveis de complexidade e com adesão variável a
padrões precisos. Por exemplo, compare um sistema local de locação de
filmes com um sistema nacional de reclamações de seguros. O sistema de
locação de filmes pode ser gerenciado por duas pessoas, o hardware
utilizado provavelmente é um único microcomputador, os procedimentos são
simples e o volume de dados tende a ser baixo. O sistema nacional de
reclamações de seguros possui pelo menos um administrador de sistemas,
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 16 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

vários DBAs em tempo integral e muitos projetistas e programadores; o


hardware inclui diversos servidores em vários locais por todos os Estados
Unidos; é provável que os procedimentos sejam numerosos, complexos e
rigorosos e que o volume de dados tenda a ser alto.
Além dos diferentes níveis de complexidade dos sistemas de banco de
dados, os gerentes também devem levar em consideração: as soluções de
bancos de dados devem ser efetivas em relação a custos-benefícios e a
fatores táticos e estratégicos. A criação de uma solução de um milhão de
dólares para um problema de mil dólares dificilmente constará entre os
exemplos de boa seleção de sistema e de bom projeto e gerenciamento de
bancos de dados. Por fim, é provável que a tecnologia de bancos de dados
já em uso afete a seleção de um sistema.
Embora o sistema de banco de dados apresente vantagens consideráveis
em relação a abordagens de gerenciamento anteriores, também trazem
desvantagens significativas. Por exemplo (Rob e Coronel, 2011):
- Aumento de custos. Os sistemas de banco de dados exigem hardware e
software sofisticados e pessoal altamente treinado. O custo de
manutenção do hardware, software e pessoal necessários para operar e
gerenciar um sistema de banco de dados pode ser substancial. Os custos
de treinamento, licenciamento e atendimento às regulamentações
costumam ser negligenciados quando da implementação desses sistemas.
- Complexidade de gerenciamento. Os sistemas de banco de dados
apresentam interfaces com muitas tecnologias diferentes e têm um
impacto significativo sobre os recursos e a cultura de uma empre
sa. As alterações introduzidas pela adoção do sistema de banco de dados
deve ser adequadamente gerenciadas para garantir que ajudem no
progresso dos objetivos da empresa. Levando em conta o
fato de que os bancos de dados mantêm dados fundamentais da empresa
que são acessados a partir de várias fontes, as questões de segurança
devem ser uma constante preocupação.
- Manutenção do banco de dados atualizado. Para maximizar a
eficiência do sistema de banco de dados, deve-se manter o sistema
atualizado. Portanto, é necessário fazer atualizações frequentes
e aplicar os últimos pacotes e medidas de segurança a todos os
componentes. Como a tecnologia dos bancos de dados avança
rapidamente, os custos com treinamento de pessoal tendem a ser
significativos.
- Dependência do fornecedor. Em virtude do alto investimento em
tecnologia e treinamento de pessoal, as empresas podem hesitar em
trocar os fornecedores de bancos de dados. Por essa razão, é
menos provável que estes ofereçam vantagens de preço aos clientes
existentes, que ficarão restritos quanto a suas escolhas de componentes
de sistemas de banco de dados.
- Ciclos frequentes de atualização/substituição. Os fornecedores de
SGBDs atualizam seus produtos adicionando novas funcionalidades. Em
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 17 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

geral, esses recursos são integrados a novas versões de


atualização do software. Algumas dessas versões exigem atualizações de
hardware. Não são apenas as atualizações que geram custo, mas também
o treinamento dos usuários e administradores para que utilizem e
gerenciem adequadamente os novos recursos.

Interação com o SGBD


Para um grande banco de dados, existe um variado número de pessoas
envolvidas, desde o projeto, uso, até manutenção, executando funções
exclusivas e complementares.
- Os administradores de sistema supervisionam as operações gerais do
sistema de banco de dados.
- Os administradores de banco de dados, também conhecidos como DBAs
(sigla em inglês para database administrator), gerenciam o SGBD e garantem
que o banco de dados funcione adequadamente.
- Os projetistas de banco de dados projetam a estrutura do banco. Na
prática, são os arquitetos dos bancos de dados. Se o projeto for ruim,
mesmo os melhores programadores de aplicações e os DBAs mais
dedicados não serão capazes de produzir um ambiente útil de banco de
dados. Como as organizações esforçam-se para otimizar seus recursos de
dados, a descrição do trabalho do projetista expandiu-se para cobrir novas
dimensões e suas responsabilidades são crescentes.
- Os programadores e analistas de sistemas projetam e implementam os
aplicativos. Desenvolvem e criam as telas de entrada de dados, os relatórios
e os procedimentos por meio dos quais os usuários finais acessam e
manipulam os dados do banco de dados.
- Usuários Finais. Existem basicamente três categorias de usuários finais que
são os usuários finais do banco de dados, fazendo consultas, atualizações e
gerando documentos:
- usuários casuais: acessam o banco de dados casualmente, mas que podem
necessitar de diferentes informações a cada acesso; utilizam sofisticadas
linguagens de consulta para especificar suas necessidades;
- usuários novatos ou paramétricos: utilizam porções pré-definidas do banco
de dados, utilizando consultas preestabelecidas que já foram
exaustivamente testadas;
- usuários sofisticados: são usuários que estão familiarizados com o SGBD e
realizam consultas complexas.

Os SGBDs que estão sendo mais utilizados atualmente são:


• SGBDs livres, como o MySQL que possui o código fonte aberto,
projetado para servir como opção aos SGBDs corporativos proprietários.
Apesar de seu crescimento nos últimos anos e de sua grande
popularidade, especialmente em aplicativos voltados para a web, ainda
Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 18 de 43
CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

não tem uso difundido em grandes empresas, que ainda preferem confiar
seus dados a aplicações mais “maduras” e com maior capacidade de
suporte. Há outros SGBDs livres que seguem a linha do MySql, como o
PostgreSql, por exemplo.

Figura. Interface do MySQL


• Microsoft Access (Faz parte do pacote Microsoft Office, voltado para
bancos de dados pessoais (uso doméstico) e menos robustos (pequenas
aplicações de uso não crítico);
• Base (Faz parte do pacote BrOffice.Org, mais voltado para uso também
doméstico);
• SGBDs comerciais e proprietários para uso corporativo, como o SQL
Server e o Oracle, utilizados em projetos mais volumosos que
envolvem bancos de dados corporativos (de grandes empresas). Outros
SGBDs podem ser destacados, como: SyBase, Adabas, DB2, etc.

Modelagem de Dados
Uma das principais características da abordagem de banco de dados é que ela
fornece alguns níveis de abstração de dados omitindo ao usuário final detalhes
de como os dados são armazenados.

Define-se como modelo de dados um conjunto de conceitos que podem ser


utilizados para se realizar uma descrição formal da estrutura de um banco de
dados (descrição dos dados, dos relacionamentos entre os dados, da
semântica e das restrições impostas aos dados). Ex: Se formos criar um banco
de dados para o sistema bancário o modelo de dados descreverá o que este
banco de dados deve armazenar: contas (o que precisamos armazenar a

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 19 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

respeito das contas: número, agência, saldo, etc.), clientes (nome, endereço,
telefone, etc.).

Principais Modelos de Dados


1. Modelo Hierárquico ou de árvore
É aquele no qual os dados estão organizados de cima para baixo ou estrutura
de árvore invertida. Por exemplo, os dados sobre um projeto para uma
empresa podem seguir este tipo de modelo. Este método de ligação é
semelhante à relação entre pais e filhos: a criança não existirá sem os pais. É
o que mais bem se adapta a situações nas quais as relações lógicas entre os
dados podem ser representadas com a abordagem (um-para-muitos).

Fonte: (Takai, Italiano e Ferreira, 2005)

2. Modelo em Rede
Um modelo em rede é uma extensão do modelo hierárquico. Em vez de se
terem apenas vários níveis de relações um-para-muitos, o modelo em rede é
uma relação membro-proprietário, na qual um membro pode ter muitos
proprietários. Nesse modelo, há frequentemente mais de um caminho pelo
qual um determinado elemento de dado pode ser acessado.

Figura. Modelo em Rede

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 20 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

3. Modelo Relacional
Os modelos relacionais se tornaram os mais populares. A finalidade global
deste modelo é descrever o dado usando um formato tabular padrão (todos os
elementos são localizados em tabelas bidimensionais). As tabelas organizam os
dados em linhas e colunas, simplificando o acesso e a manipulação dos dados.
Uma vez colocados os dados no Banco de Dados relacional, pode-se fazer
perguntas e manipular dados utilizando as operações da álgebra relacional. As
manipulações básicas de dados incluem a sua seleção, projeção e
agrupamento.

Classificação dos SGBDs


O principal critério para se classificar um SGBD é o modelo de dados no qual é
baseado. A grande maioria dos SGBDs contemporâneos são baseados
no modelo relacional, alguns em modelos conceituais e alguns em modelos
orientados a objetos. Outras classificações são:
* usuários: um SGBD pode ser mono-usuário, comumente utilizado em
computadores pessoais ou multiusuários, utilizado em estações de
trabalho, mini-computadores e máquinas de grande porte;
* localização: um SGBD pode ser localizado ou distribuído; se ele for
localizado, então todos os dados estarão em uma máquina (ou em um
único disco) ou distribuído, onde os dados estarão distribuídos por
diversas máquinas (ou diversos discos);
* ambiente: ambiente homogêneo é o ambiente composto por um único
SGBD e um ambiente heterogêneo é o ambiente composto por diferentes
SGBDs.

Etapas da Modelagem de Dados


Uma etapa não descrita, mas de suma importância para qualquer etapa da
modelagem de dados é a análise de requisitos que representa uma etapa
em que serão coletadas as informações de uma abstração do mundo real – o
minimundo.
Em seguida temos:
Três são as etapas da modelagem de banco de dados:
- Projeto Conceitual
- Projeto Lógico
- Projeto Físico

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 21 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Figura. Etapas da Modelagem de Dados

• Projeto Conceitual
É a descrição de mais alto nível da estrutura do BD, NÃO contendo
detalhes de implementação.
Nesta etapa não é necessário se preocupar com o tipo de SGBD a ser
usado, ou seja o projeto é independente do tipo de SGBD usado.
É o ponto de partida do projeto de Banco de Dados e seu objetivo é
representar a semântica da informação, independente de considerações de
eficiência.
O objetivo é a representação dos requisitos de dados do domínio.
Requisitos: clareza (facilidade de compreensão) e exatidão (formal).

• Projeto Lógico
No modelo lógico existe a descrição da estrutura do BD que pode ser
processada pelo SGBD. Em poucas palavras é o modelo conceitual mapeado
para um modelo lógico de dados.
Nesta etapa há a dependência da classe de modelos de dados utilizada pelo
SGBD, mas não do SGBD.
A ênfase do modelo lógico está na eficiência de armazenamento, ou seja,
em evitar muitas tabelas (e junções); tabelas subutilizadas, etc.
Futuras alterações no modelo lógico devem ser primeiro efetuadas no
Modelo Conceitual.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 22 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

• Projeto Físico
Nesta etapa ocorre o mapeamento do modelo lógico em um esquema físico
de acordo com o SGBD específico, ou seja, o modelo criado está
diretamente ligado ao SGBD escolhido.
No modelo físico contém a descrição da implementação da base de dados
na qual descreve as estruturas de armazenamento e os métodos de acesso.
Caracteriza-se pela criação do esquema SQL da modelagem lógica. Sua
ênfase na eficiência de acesso como na implementação de consultas,
índices, etc. Exemplos: alocação dinâmica de espaços, clusterização,
particionamento físico das tabelas, etc.

A figura seguinte faz uma descrição simplificada do processo de projeto de um


banco de dados.

Figura. Esquema Geral de Modelagem de Dados

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 23 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Nesse contexto tem-se:


Modelos Descrevem a estrutura de um Banco de Dados de uma forma
Conceituais mais próxima da percepção dos usuários.
Independente de aspectos de implementação.
Conceitos: entidades, atributos, relacionamentos.
Exemplos:
• Modelo Entidade-relacionamento (ER).
• Modelo Funcional.
Modelo Modelo de dados que representa a estrutura de dados de um
Lógico banco de dados conforme vista pelo usuário do SGBD.
Dependente do tipo particular de SGBD que está se utilizando.
Exemplos:
• Modelo Relacional.
• Modelo de Fede (CODASYL).
• Modelo Hierárquico.
Modelo É uma representação gráfica do detalhamento físico das
Físico estruturas dos dados que o banco de dados irá armazenar.
Este modelo é dependente do SGBD em que será implementado.
Conceitos: formatos dos registros, ordenamento dos registros,
caminhos de acesso (eficiência).

**Abordagem Entidade-Relacionamento (ER)


A abordagem entidade-relacionamento é um padrão para a modelagem
conceitual. Foi criada em 1976 por Peter Chen que junto com alguns conceitos
apresenta uma notação gráfica para diagramas que tem por
características: ser um modelo simples, com poucos conceitos; representação
gráfica de fácil compreensão.

Um esquema conceitual de dados é também chamado de esquema ER,


diagrama ER, ou modelo ER.

O modelo Entidade-Relacionamento (ER) é um modelo de dados


conceitual de alto nível, cujos conceitos foram projetados para estar o mais
próximo possível da visão que o usuário tem dos dados, não se preocupando
em representar como estes dados estarão realmente armazenados. O modelo
ER é utilizado principalmente durante o processo de projeto de banco de
dados.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 24 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Entidades
O objeto básico tratado pelo modelo ER é a entidade, que pode ser definida
como um objeto do mundo real, concreto ou abstrato e que possui
existência independente.

Figura. Exemplos de Entidades


Para se referir a uma entidade em particular é também usado o termo
instância (ou ocorrência). A entidade é representada no DER (Diagrama
Entidade-Relacionamento) como um retângulo contendo o nome da entidade.
Exemplos:

Figura. Notação de Entidade


Atributos
São informações que qualificam uma entidade e descrevem seus elementos ou
características. Quanto transpostos para o modelo físico são chamados de
colunas ou campos.
Sendo assim, cada entidade possui um conjunto particular de propriedades que
a descreve, chamadas de atributos.
Para cada atributo, existe um conjunto de valores possíveis, chamado
domínio, ou conjunto de valores.

No exemplo aqui ilustrado, o domínio do atributo Título pode ser o conjunto de


todos os textos string de um certo tamanho. O domínio do atributo tipoFilme
pode ser o conjunto de strings {cor, preto e branco}.
Existem diversos tipos de atributo, dentre eles:

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 25 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

- Atributos simples
- Compostos
-Monovalorados
- Multivalorados

Os atributos que não são divisíveis (não é dividido em partes) são chamados
atributos simples.
Os atributos compostos podem ser divididos em subpartes menores que
representam outros atributos básicos com significados diferentes. Por
exemplo:
- Título pode ser estruturado em original e títuloLançamento;
- o atributo Endereço, pode ser subdividido em número, logradouro, cidade,
estado e CEP.

Normalmente existem atributos que tem funções especiais em uma entidade.


Dessas algumas servem como identificadores, a saber:

- Chave primária: É o atributo ou grupamento de atributos cujo valor


identifica unicamente uma entidade dentre todas as outras. Deve ter conteúdo
reduzido e valor constante no tempo. Pode ser natural ou artificial.

- Chave candidata: É o atributo ou grupamento de atributos que tem a


propriedade de identificação única. Pode vir a ser a chave primária.

- Chave composta: É formada pelo grupamento de mais de um atributo.

Figura. Notação de Atributo

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 26 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Relacionamentos
Um relacionamento pode ser entendido como uma associação entre instâncias
de Entidades devido a regras de negócio. Normalmente ocorre entre instâncias
de duas ou mais Entidades, podendo ocorrer entre instâncias da mesma
Entidade (auto-relacionamento).

Figura. Notação de Relacionamento

Por que o relacionamento é necessário?


• Quando existem várias possibilidades de relacionamento entre o par das
entidades e se deseja representar apenas um.
• Quando ocorrer mais de um relacionamento entre o par de entidades
• Para evitar ambiguidade.
• Quando houver auto-relacionamento.

Várias são as possibilidades de relacionamentos, como serão vistos a seguir:

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 27 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Para definir o número de ocorrências de uma entidade usamos o conceito de


Cardinalidade.
A Cardinalidade indica quantas ocorrências de uma Entidade participam no
mínimo e no máximo do relacionamento.
• Cardinalidade Mínima - define se o relacionamento entre duas entidades
é obrigatório ou não.
• Cardinalidade Máxima de uma entidade- é o número máximo de
instâncias da entidade associada que devem se relacionar com uma
instância da entidade em questão.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 28 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Quanto a Cardinalidade
- 1:1 (Um para um)
- 1:N (Um para muitos)
- N:1 (Muitos para um)
- N:N (Muitos para muitos)

Exemplos de relacionamentos:

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 29 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 30 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

As entidades fracas são representadas por um retângulo duplicado. O


conjunto de relações que identificam as entidades fracas são representadas
por losângulos duplicados. Os atributos que constituem a chave parcial (ou
discriminadores) são sublinhados de forma tracejada.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 31 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Notação:

Figura. Entidade Fraca


Exemplo:

Veja o exemplo da figura seguinte.

Possui Dependentes
EMPREGADO
DEPENDENTE
e1
e2
p1

p2

p3

Figura - Relacionamento com uma Entidade Fraca (Dependente)


O tipo entidade DEPENDENTE é uma entidade fraca pois não possui um método
de identificar uma entidade única. O EMPREGADO não é uma entidade fraca
pois possui um atributo para identificação (atributo chave). O número do RG
de um empregado identifica um único empregado. Porém, um dependente de 5
anos de idade não possui necessariamente um documento. Desta forma, esta
entidade é um tipo entidade fraca. Um tipo entidade fraca possui uma chave
parcial, que juntamente com a chave primária da entidade proprietária forma
uma chave primária composta. Neste exemplo: a chave primária do
EMPREGADO é o RG. A chave parcial do DEPENDENTE é o seu nome, pois dois
irmãos não podem ter o mesmo nome. Desta forma, a chave primária desta
entidade fica sendo o RG do pai ou mãe mais o nome do dependente.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 32 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Todos os exemplos vistos acima foram para relacionamentos binários, ou seja,


entre dois tipos entidades diferentes. Porém, o Modelo Entidade
Relacionamento (MER) não se restringe apenas a relacionamentos
binários. O número de entidades que participam de um tipo relacionamento é
irrestrito e armazenam muito mais informações do que diversos
relacionamentos binários.

Diagrama Entidade Relacionamento


O diagrama Entidade Relacionamento é composto por um conjunto de objetos
gráficos que visa representar todos os objetos do modelo Entidade
Relacionamento tais como entidades, atributos, atributos chaves,
relacionamentos, restrições estruturais, etc.
O diagrama ER fornece uma visão lógica do banco de dados, fornecendo um
conceito mais generalizado de como estão estruturados os dados de um
sistema.
Os objetos que compõem o diagrama ER estão listados a seguir, na figura
seguinte.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 33 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

TIPO
ENTIDADE ATRIBUTO

ATRIBUTO
TIPO ENTIDADE CHAVE
FRACA
ATRIBUTO
MULTI
VALORADO
TIPO
RELACIONAMENTO

ATRIBUTO
COMPOSTO
TIPO
RELACIONAMENTO
IDENTIFICADOR
ATRIBUTO
DERIVADO

1 N
E1 R E2 E1 R E2

Taxa de Cardinalidade 1:N Participação Parcial de E1 em R,


para E1:E2 em R Participação Total de E2 em R

(min, max)
R E1

Restrição Estrutural (min,max) na


Participação de E1 em R

Figura - Objetos que Compõem o Diagrama ER

**Abordagem Relacional
 Abordagem de modelagem de dados utilizada nos sistemas de
gerenciamento de bancos de dados do tipo relacional.
 Modelagem a nível lógico.
 O modelo relacional foi criado por Codd em 1970 e tem por finalidade
representar os dados como uma coleção de relações, em que cada
relação é representada por uma tabela, composta por linhas, colunas
e chaves primárias, relacionadas por meio de chaves
estrangeiras.
 Opera com os dados organizados como um conjunto de tabelas
 O conceito de tabela é o mais forte no modelo relacional.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 34 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

 Na terminologia do modelo relacional, cada tabela é chamada de


relação; uma linha de uma tabela é chamada de tupla; o nome de cada
coluna é chamado de atributo; o tipo de dado que descreve cada coluna
é chamado de domínio.

Tuplas
Os atributos e seus valores descrevem as instâncias de uma entidade,
formando o que chamamos de tuplas ou registros.

Figura. Tuplas

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 35 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 36 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Dependência Funcional e Normalização


• A Dependência Funcional é a principal ferramenta para medir o “quão
apropriado” é o agrupamento de atributos numa relação.
• O processo de normalização pode ser visto como o processo no qual
são eliminados esquemas de relações (tabelas) não satisfatórios,
decompondo-os, através da separação de seus atributos em
esquemas de relações menos complexas mas que satisfaçam as
propriedades desejadas.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 37 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

• O processo de normalização como foi proposto inicialmente por Codd


conduz um esquema de relação através de uma bateria de testes para
certificar se o mesmo está na 1a, 2a e 3a Formas Normais. Estas três
Formas Normais são baseadas em dependências funcionais dos
atributos do esquema de relação.
Formas Normais Básicas
1ª Forma Normal
Uma relação estará na 1ª FN se não houver atributo representando
agrupamento (não atômico) e nem atributo repetitivo (multivalorado).

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 38 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

2ª Forma Normal
Uma relação estará na 2ª FN, se e somente se, estiver na 1a FN e os
seus atributos não chaves forem dependentes funcionais completos da
chave primária.

3ª Forma Normal
Uma relação estará na 3ª FN, se e somente se, estiver na 2 a FN e
todos os seus atributos não chaves forem dependentes não transitivos
da chave primária.

• 1a Forma Normal
A 1a Forma Normal prega que todos os atributos de uma tabela devem ser
atômicos (indivisíveis), ou seja, não são permitidos atributos
multivalorados, atributos compostos ou atributos multivalorados
compostos. Leve em consideração o esquema a seguir:
• CLIENTE
1. Código
2. { Telefone }
3. Endereço: ( Rua, Número, Cidade )
gerando a tabela resultante:
Telefone 1 Endereço
Cliente Código Telefone n Rua Número Cidade
sendo que a mesma não está na 1a Forma Normal pois seus atributos não são
atômicos. Para que a tabela acima fique na 1a Forma Normal temos que
eliminar os atributos não atômicos, gerando as seguintes tabelas como
resultado:
Cliente Código Rua Número Cidade

Cliente_Telefone Código_Cliente Telefone_Cliente

• 2a Forma Normal
A 2a Forma Normal prega o conceito da dependência funcional total. Uma
dependência funcional X  Y é total se removemos um atributo A qualquer do
componente X e desta forma, a dependência funcional deixa de existir.
A dependência funcional X  Y é uma dependência funcional parcial se
existir um atributo A qualquer do componente X que pode ser removido e a
dependência funcional X  Y não deixa de existir.
{ RG_Empregado, Número_Projeto }  Horas

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 39 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

é uma dependência funcional total, pois se removermos o atributo


RG_Empregado ou o atributo Número_Projeto, a dependência funcional
deixa de existir.
Uma tabela T está na 2a Forma Normal se estiver na 1a Forma Normal e
todos os seus atributos não chaves forem totalmente funcionalmente
dependente da chave primária C.
Se uma tabela não está na 2a Forma Normal a mesma pode ser normalizada
gerando outras tabelas cujos atributos que não façam parte da chave primária
sejam totalmente funcionalmente dependente da mesma, ficando a tabela na
2a Forma Normal.

• 3a Forma Normal
A 3a Forma Normal prega o conceito de dependência transitiva. Uma
tabela está na 3a Forma Normal se estiver na 2a Forma Normal e não
houver dependência transitiva entre atributos não chave.

Aspecto de Integridade

Restrição de Chave
• Uma relação deve ter pelo menos uma chave.
• Definição de chave: uma chave é um atributo ou conjunto de atributos
cujo valor ou combinação de valores deve ser distinto em qualquer
instância da relação.
• A existência de pelo menos uma chave é uma condição obrigatória,
tendo em vista que uma relação é definida como um conjunto de tuplas
e, todas as tuplas devem ter um valor distinto.

Restrição de Entidade
• Especifica que nenhum valor de chave primária pode ser nulo.
• Uma tupla em uma tabela que se refere a uma outra relação deve
referenciar uma tupla existente naquela relação.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 40 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Outros Tipos de Restrições


• As restrições verificadas tratam somente das restrições estruturais.
• Existem as restrições de integridade semântica ou regras de negócio.
• São implementadas por meio de gatilhos ou stored procedures
(procedimentos armazenados).
• Ex: o salário de uma atriz não pode ser maior que 1/3 do orçamento
total do filme.

Restrições de integridade no Modelo Relacional

Integridade Lógica
• Conjunto de regras que existem para o modelo de dados, assim como
um conjunto de regras de negócio, que regem a manipulação do BD, de
forma a não ferir nenhuma destas regras estabelecidas.

Integridade Física
• Conjunto de procedimentos operacionais que garantem a integridade do
BD, mesmo em situações de falha de algum componente do ambiente
onde o BD é manipulado.
• Exemplo:
• Valor mínimo de depósito para abertura de uma conta R$10.000,00
• Conta corrente sem movimento há 180 dias será encerrada.
Podem ser cumpridas e implementadas pelos SGBDs Relacionais, através
do mecanismo de Regras ou gatilhos (Triggers), hoje existentes no SQL.

Especificação de Banco de Dados Relacionais


A especificação de um banco de dados relacional (chamada de esquema do
banco dedados) deve conter no mínimo a definição do seguinte:
- Tabelas que formam o banco de dados
- Colunas que as tabelas possuem
- Restrições de integridade

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 41 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Na prática, na definição de esquemas relacionais são usadas diversas


notações, que variam de um SGBD para o outro.
Fase do Projeto de um Banco de Dados

Considerações Finais
Por hoje ficamos por aqui. Passamos por diversos pontos que consideramos
importantes para a prova (a repetição de alguns assuntos se faz necessária
para a memorização!!!)
Ótimos estudos, fiquem com DEUS e até a nossa próxima aula.

Um forte abraço,
Profa Patrícia

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 42 de 43


CONHECIMENTOS DE BANCO DE DADOS (TEORIA E EXERCÍCIOS) P/
AUDITORIA E FISCALIZAÇÃO - GERAL – CGU
PROFa. PATRÍCIA LIMA QUINTÃO

Referências Bibliográficas
QUINTÃO, Patrícia Lima. Notas de aula, 2011/2012.
BRAGA, Regina. Notas de aula, UFJF, 2012.
HEUSER, Carlos Alberto. Projeto de banco de dados. 4. ed. Porto Alegre:
Sagra, 2001. 204 p., il.
HERNANDEZ, Michael J. Aprenda a projetar seu próprio banco de dados.
Tradução Patrizia Tallia Parenti. São Paulo: Makron, 2000.
KORTH, Henry F.; SILBERSCHATZ, Abraham. Sistema de banco de dados.
Tradução Mauricio Heihachiro Galvan Abe. 2. ed. São Paulo: Makron, 1995.
MACHADO, Felipe Nery Rodrigues; ABREU, Maurício Pereira de. Projeto de
banco de dados: uma visão prática. 6. ed. São Paulo: Érica, 2000.
SETZER, Valdemar W. Banco de dados: conceitos, modelos,
gerenciadores, projeto lógico, projeto físico. 3. ed. rev. São Paulo: E.
Blücher, 2002. 289 p.
Revistas SQL Magazine (ed. 31 e 32).
TAKAI, O.K.; ITALIANO,I.C.; FERREIRA, E.F.Introdução a Banco de Dados.
2005.

Profa. Patrícia Lima Quintão www.pontodosconcursos.com.br 43 de 43

Você também pode gostar