Você está na página 1de 146

Administrador de Banco de

Dados
Unidade de competência Período Carga horária

UC1: Instalar e configurar o


08/11/2021 a 17/12/2021 72 horas
sistema de banco de dados

UC2: Realizar o monitoramento


do uso e desempenho dos 31/01/2022 a 21/02/2022 48 horas
sistemas de banco de dados
UC3: Realizar a manutenção e
22/02/2022 a 24/03/2022 60 horas
otimização do banco de dados
UC4: Projeto Integrador
Administração de Banco de 25/03/2022 a 04/04/2022 20 horas
dados
  Total 200 horas
Para onde você vai?
Objetivo geral

Formar profissionais com


competências para atuar e
intervir em seu campo de
trabalho, com foco em
resultados.
Para onde você vai?
Objetivo específico

• Planejar, implementar e administrar o ambiente do banco


de dados
• Instalar e configurar o sistema de banco de dados
• Realizar o monitoramento do uso e desempenho dos
sistemas de banco de dados
• Fazer a manutenção e otimização do banco de dados
• Selecionar o Sistema de Gerenciamento de Banco de
Dados (SGBD)
• Definir os procedimentos de instalação e configuração
• Criar a estrutura física de banco de dados
• Gerenciar a permissão de acesso ao banco de dados
• Elaborar um plano de expansão dos recursos de sistema
• Identificar e avaliar o impacto de falhas do banco de
dados
• Estruturar script de correção e melhorias, mediante à
desconformidade e às especificações do sistema
Para onde você vai?
Ementa
Descrição Comercial: Este curso tem
como objetivo fornecer aos alunos o
conhecimento e as habilidades para
manter um banco de dados software
Microsoft SQL Server e/ou MySQL.
Este curso é destinado aos clientes que
estão interessados em aprender os
conceitos e práticas em banco de dados,
em conformidade com as mais novas
práticas adotadas no mercado.
Para onde você vai?
Perfil Profissional de
Conclusão
O Administrador de Banco de
Dados (DBA) é responsável por
implementar, instalar, configurar,
administrar e realizar
procedimentos de otimização e
manutenção do sistema de banco
de dados de uma organização.
O que você vai fazer?
Média salarial
No cargo de Administrador de
Banco de Dados se inicia
ganhando R$ 4.601,00 de
salário e pode vir a ganhar até
R$ 9.848,00. A média salarial
para Administrador de Banco de
Dados no Brasil é de R$
7.090,00.
Organização Curricular
UC1 • Instalar e configurar o sistema de banco de dados
72h
UC2 • Realizar o monitoramento do uso e desempenho dos sistemas
48h de banco de dados

UC3 • Realizar a manutenção e otimização do banco de dados


60h
UC4 • Projeto Integrador Administração de Banco de Dados
20h
Símbolos importantes

• Olhando de perto: outras fontes de pesquisas

• Tá na Net: Sites para pesquisas e assuntos referentes


ao conteúdo aplicado
• Algo mais: Esclarecimento de algumas dúvidas do
aluno
• Poder do cérebro: algumas ideias criativas ou
curiosidades interessantes
Posso fazer este curso?
• Este curso é para estudantes ou
profissionais de tecnologia da
informação que possuem
conhecimentos em Windows e
aplicativos como Microsoft
Office e desejam se aperfeiçoar
na área de banco de dados.
Para quem é este curso?
Para quem responder “sim”
para todas as perguntas:

Você tem acesso a um computador


onde possa instalar o Oracle,
Microsoft SQL, MySQL ou outro
RDBMS?
Para quem é este curso?
Para quem responder “sim”
para todas as perguntas:

Você quer aprender, entender e


lembrar como criar tabelas, bancos
de dados, e escrever consultas
usando os mais novos e modernos
padrões?
Para quem é este curso?
Para quem responder “sim”
para todas as perguntas:

Você prefere uma festa estimulante


com jantar ao invés de palestras
secas, desanimadas e acadêmicas?
Para quem é este curso?
Para quem responder “sim”
para todas as perguntas:

Então este curso é para


você!!
Quem não deveria fazer este
curso, provavelmente?
Para quem responder “sim”
para todas as perguntas:

Você está completamente


confortável em iniciar a
sintaxe SQL e procurar algo
que realmente irá ajudá-lo
com o design de bancos de
dados avançados?
Quem não deveria fazer este
curso, provavelmente?
Para quem responder “sim”
para todas as perguntas:

Você já é um programador em
SQL avançado e está
procurando um curso para
especialização em engenharia
SQL?
Quem não deveria fazer este
curso, provavelmente?
Para quem responder “sim”
para todas as perguntas:

Você tem medo de tentar algo


novo? Você prefere ter que
fazer um canal no dente a usar
roupa xadrez com listras?
Quem não deveria fazer este
curso, provavelmente?
Para quem responder “sim”
para todas as perguntas:

Então este curso não é


para você!!
Quem não deveria fazer este
curso, provavelmente?
Mas nem tudo está
perdido!!

Se você esqueceu ou nunca


entendeu formulários normais,
conexões um-para-muitos e
conexão esquerda externa, você
está no lugar certo.
Sei o que seu cérebro está
pensando!
• Seu cérebro anseia por
novidades.
• Ele está sempre procurando
algo diferente.
• Faz as coisas normais com
tranquilidade e quando
chega algo novo o coração Será que isso
dispara. vale a pena ser
guardado.
Sei o que seu cérebro está
pensando!
• Juntos teremos muitas
Brainstorming (explosões de
ideias)
• Como vou aprender tudo
isso?
• Devagar a gente aprende,
basta ter foco.
Com certeza
vale a pena ser
guardado.
Sei o que seu cérebro está
pensando!
• Juntos teremos muitas
Brainstorming (explosões de
ideias)
• Como vou aprender tudo
isso?
• Devagar a gente aprende,
basta ter foco. E também
compartilhado
com outras
pessoas
Um lugar Eu costumava manter uma lista
de todos os meus pacientes no

todas as papel, mas eu sempre esquecia!


Então aprendi SQL e agora não

coisas
perco uma alma. Aprender
sobre tabelas não vai doer nada!

• Você não odeia


esquecer as coisas?
• Chave do carro,
cupom de desconto,
telefone do gás,
recadinho do chefe,...
Definindo
seus dados
• Você não odeia
esquecer as coisas?
• Chave do carro,
cupom de desconto,
telefone do gás,
recadinho do chefe,...
Definindo
seus dados
• Fred conhece várias
pessoas solteiras,
algumas procuram
amigos, outras
namorados,...
Sempre com sua velha
lista...
Poder do
cérebro
Existe uma maneira
melhor de organizar
esta informação? O
que você faria?
Poder do
cérebro
Saiba que um banco
de dados é tudo que
precisamos.
SGBD, como
funciona?
• (SGBD) Sistema de
Gerenciamento de
Banco de Dados é um
software que possui
recursos capazes de
manipular as
informações do banco
de dados e interagir com
o usuário.

O que é Meta-dados?
SGBD, os Top 5!
• (SGBD) Sistema de Gerenciamento de Banco de Dados é um
software que possui recursos capazes de manipular as
informações do banco de dados e interagir com o usuário.
• Exemplos de SGBD`s são: Oracle, SQL Server, DB2, PostgreSQL,
MySQL, o próprio Access ou Paradox, entre outros.

É tudo que
precisamos?
Veremos na próxima
Administrador de Banco de Dados
Instalando SGBD’s
Tente você
mesmo
• Todas as suas novas
habilidades não farão
muita coisa sem um
lugar para aplica-las.
• Chegou a hora de
instalar seu próprio
Sistema SQL.
INSTALANDO O BANCO DE DADOS
ORACLE 12C NO WINDOWS
• Antes de instalar o software, o
OUI (Oracle Universal Installer),
fará algumas verificações
automatizadas para garantir que
o computador atenda aos
requisitos básicos de hardware e
software para a instalação do
banco de Dados Oracle. Caso o
computador não atenda aos
requisitos, uma mensagem será
apresentada.
INSTALANDO O BANCO DE DADOS
ORACLE 21C XE NO WINDOWS
• Antes de começarmos a
instalar este banco de dados,
precisamos conhecer os
requisitos mínimos para o
Oracle Database 21c.
1. REQUISITOS
Requerimento Valor
Sistema operacional O Oracle Database XE para Windows x64 é suportado
nas seguintes versões do sistema operacional: Windows
7 x64 – edições Professional, Enterprise e Ultimate
Windows 8.1 x64 – edições Pro e Enterprise Windows 10
x64 – edições Pro, Enterprise e Education Windows
Server 2012 x64 – edições Standard, Datacenter,
Essentials e Foundation Windows Server 2012 R2 x64 –
edições Standard, Datacenter, Essentials e Foundation
Windows Server 2016 x64 – edições Standard,
Datacenter e Essentials
1. REQUISITOS
Requerimento Valor
Virtualização A Oracle certifica as seguintes tecnologias de
virtualização com o Oracle Database no Windows:
Servidor Oracle VM Microsoft Hyper-V Para obter
informações mais detalhadas sobre combinações
certificadas do Oracle VM Server, consulte a nota
464754.1 do My Oracle Support. Para obter mais
informações sobre combinações certificadas de Hyper-V,
você pode visitar:
http://www.oracle.com/technetwork/database/virtualiz
ationmatrix-172995.html
1. REQUISITOS
Requerimento Valor
Espaço em disco Mínimo de 9 gigabytes HD para software Oracle, mais 2
gigabytes ou mais para armazenamento temporário
RAM Mínimo de 2 gigabytes de RAM
2. DOWNLOAD
Acesse a página a seguir:
• https://www.oracle.com/dat
abase/technologies/xe-downl
oads.html

2. DOWNLOAD
3. Extraindo os arquivos
1. Descompacte o arquivo na
pasta Download ou na pasta
que você baixou.
Veremos na próxima
Administrador de Banco de Dados
Quem são os usuários de um Banco de Dados?
Quem são os
usuários de um
Banco de Dados?
• Os usuários de um banco de
dados podem ser divididos em
três categorias:
• Administrador do Banco de
Dados (DBA)
• Analistas de sistemas e
programadores de
aplicações
• Usuários finais
Administrador do
Banco de Dados (DBA)

• responsável por monitorar e


gerenciar todas as bases de
dados criadas no SGBD.
• controla as permissões dos usuários,
garante que os usuários tenham
acesso aos dados, realiza backups,
recupera os dados em caso de falhas,
garante o melhor desempenho para o
banco de dados, monitora serviços de
usuários no banco de dados, etc.
Analistas de sistemas
e programadores de
aplicações
• Normalmente, um DBA é
responsável por um SGBD
específico, e deve ter
estudado e feito cursos para
aquele SGBD (por exemplo:
DBA Oracle, DBA SQL Server
ou DBA mySQL).

• Algo mais: SQL – Strutured Query Language


(Linguagem de Consulta Estruturada)
Analistas de sistemas
e programadores de
aplicações
• Esse usuário precisa
conhecer a área de
banco de dados, saber
modelar uma base de
dados e também
conhecer a linguagem
SQL.
Usuários finais
• os usuários finais são
aquelas pessoas que
vão trabalhar
diariamente com as
aplicações
desenvolvidas.
Administrador de Banco de Dados
Modelo de Dados
O que é um Modelo de
(Banco de) Dados?

• Esse usuário precisa


conhecer a área de
banco de dados, saber
modelar uma base de
dados e também
conhecer a linguagem
SQL.
O que é um Modelo de
(Banco de) Dados?

• Esse usuário precisa


conhecer a área de banco
de dados, saber modelar
uma base de dados e
também conhecer a
linguagem SQL.

• Algo mais: Modelo de dados = Descrição formal da


estrutura de um banco de dados.
O que é um Modelo de
(Banco de) Dados?

• Modelo conceitual
• Modelo lógico
Modelo Conceitual

• Um modelo conceitual é uma descrição do banco de dados de forma


independente de implementação em um SGBD.
Modelo lógico

• Um modelo lógico é uma descrição de um banco de dados no nível


de abstração visto pelo usuário do SGBD. Assim, o modelo lógico é
dependente do tipo de SGBD que está sendo usado.
Administrador de Banco de Dados
Flash back
O Surgimento de tudo
DÉCADA DE 60
PRIMÓRDIOS
Nestes primórdios, bancos de dados
surgiram na empresa IBM, os dados eram
armazenados diretamente em arquivos,
os quais implementavam alguns
inconvenientes na armazenagem de
dados, como: 
• redundâncias e inconsistências
• dificuldade de acesso
• falta de integridade lógica
• falta de atomicidade nas transações
• insegurança 
DÉCADA DE 70
GÊNESIS 
Na década de 1970 o pesquisador da IBM
- Ted Codd - publicou o primeiro artigo
sobre bancos de dados relacionais.
• O Sistema R evoluiu para SQL/DS, que
posteriormente passou a chamar o DB2,
o mais conhecido sistema gerenciador
de banco dos dados da IBM. O Sistema
R utilizava uma linguagem chamada
Structured Query Language (SQL)
DÉCADA DE 80
DESENVOLVIMENTO
Nesta década surgiu o primeiro sistema
de banco de dados construído baseado
nos padrões SQL com a empresa Oracle
através do Oracle 2 e depois com a IBM
através do SQL/DS, servindo como
sistema e repositório de informações de
outras empresas. 
DÉCADA DE 90
MATURIDADE
No início da década nota-se a maturidade
que os bancos de dados atingiram com o
surgimento dos primeiros Sistemas
Gerenciadores de Banco de Dados SGDB
Orientados a Objeto comerciais, SGDBs
paralelos, tempo real, etc, além de
avanços na padronização de interfaces e
interoperabilidade.
ONDE ESTAMOS?

Atualmente, é possível afirmar que a


informação gira em torno dos bancos de
dados.
• GOOGLE
• Meta
• Microsoft
• Amazon
Mas o que são Dados?

• “Dados são itens referentes a


uma descrição primária de
objetos, eventos, atividades e
transações que são gravados,
classificados e armazenados,
mas não chegam a ser
organizados de forma a
transmitir algum significado
específico”.
Exemplos de Dados

• Dado: 
• data de nascimento:
31/08/1981. 
• data atual: 
01/11/2021. 
• Informação: 
• idade: 40 anos. 
Exemplos de Dados

• Dado: 
• Preço unitário: 
R$ 250,00
• quantidade. 
10 Kg
• Informação: 
• Total a pagar:
R$2.500,00.
Exemplos de Dados

• Dado: 
• Quilômetros percorridos: 
80 Km
• Tempo gasto: 
4 horas
• Informação: 
• Velocidade: 
20 km/h
Dados e Informação são sinônimos?

Por convenção, na área de banco de dados, os termos “dado”


e “informação” significam a mesma coisa. Isso ocorre porque
devemos armazenar apenas aquilo que é útil para a nossa
aplicação. Sendo assim, daqui para a frente, os dois termos
serão usados como sinônimos.

PROGRAMA
INFORMAÇ
DADOS DE
ÃO
CONSULTA
O que são Dados?

• Algo mais:

Alguns exemplos de banco de dados: lista


telefônica, controle do acervo de uma
biblioteca, sistema de controle dos recursos
humanos de uma empresa.
O que são
Informações?

• Algo mais:

São resultados gerados com base nos dados


fornecidos pelo banco de dados através do SGBD
ao usuário da forma que ele solicita.
Banco de Dados e
suas vantagens

Armazenar dados em bancos


de dados apresenta algumas
vantagens, tais como:
• Os bancos de dados
armazenam dados
substituindo grandes
volumes de papéis. 
Banco de Dados
e suas vantagens

Armazenar dados em bancos


de dados apresenta algumas
vantagens, tais como:
• A obtenção e a atualização
dos dados acontecem de
forma mais rápida do que
um ser humano
manipulando papéis.
Banco de Dados
e suas vantagens

Armazenar dados em bancos


de dados apresenta algumas
vantagens, tais como:
• Os sistemas de bancos de
dados realizam o trabalho
repetitivo e monótono.
• Disponibilizam dados
atualizados a qualquer
momento. 
Banco de Dados
e suas vantagens

A tecnologia dos bancos de


dados permite a manipulação
rápida e segura de grandes
volumes de dados. Um banco
de dados serve para: 
• Armazenar grandes volumes
de dados;
• Localizar e atualizar
rapidamente os dados;
Banco de Dados
e suas vantagens

A tecnologia dos bancos de


dados permite a manipulação
rápida e segura de grandes
volumes de dados. Um banco
de dados serve para: 
• Organizar os dados em
diferentes ordens.
• Produzir listas ou relatórios.
• Gerar estatísticas.
O que é Transação em
Banco de Dados?

Uma transação é uma


operação realizada com um
banco de dados (gravação,
leitura, atualização, exclusão,
etc.).
Como começou o
Armazenamento de
Dados?
Uma transação é uma
operação realizada com um
banco de dados (gravação,
leitura, atualização, exclusão,
etc.).
Como começou o •Problema
Armazenamento
de Dados? Sistema com aplicações e arquivos isolados
Como começou o •Solução
Armazenamento
de Dados? •Arquivo integrado 
Palavras Reservadas e
Caracteres Especiais
• Linguagem SQL consiste de palavras-chave reservadas. É melhor
manter estas palavras longe do nome de seu banco de dados, tabelas
ou colunas. Ainda que goste de nomear sua nova tabela de "include"
tente criar algum nome mais descritivo, que não utiliza a palavra
"include" de forma alguma, ela serve para incluir valores na tabela.
Para sua conveniência, a seguir está uma lista daquelas palavras
reservadas.
Caracteres especiais
Caracteres Utilidade
* Retorna todas as colunas em uma tabela de um comando SELECT
() Utilizada por expressões em grupo, especifica a ordem na qual realizará operações matemáticas,
e fazer ligações. Também usada para conter subconsultas.
; Termina seu comando SQL.
, Separa uma lista de itens. Seu uso inclui o comando INSERT.
. Usada para fazer referência aos nomes de tabelas e utilizada em números decimais.
_ Este é um coringa que representa um só caractere em uma cláusula LIKE
Caracteres especiais
Caracteres Utilidade
% Outra cláusula LIKE coringa, esta aqui é usada no caso de múltiplos caracteres.
! O ponto de exclamação quer dizer NÃO. Ela é usada com comparadores na cláusula WHERE.
´´ Um par de aspas simples diz ao Sistema que um valor de texto está entre eles.
"  " Você também pode utilizar um par de aspas duplas da mesma forma, embora seja melhor se
ater a forma de aspas simples.
\ Este caractere é usado para lhe permitir colocar uma aspa simples dentro de um texto na sua
coluna ou sua tabela.
+ Além de utilizá-lo como sinal de adição, você pode utilizá-lo para conectar ou concatenar duas
faixas de texto.
Operadores matemáticos
Caracteres Utilidade
+ Adição
- Subtração
* Entre dois valores, o asterisco age como símbolo de multiplicação.
/ Divisão
^ Potenciação (algumas exceções )
Operadores comparativos
Caracteres Atribuição Caracteres Atribuição
> Maior que <> Diferente de
< Menor que >= Maior ou igual
= Igual a <= Menor ou igual
!> Não maior que != Não igual
!< Não menor que
Conectores lógicos
Caracteres Atribuição
& ou AND Lógica de intersecção
|| ou OR Lógica de junção
NOT Lógica de exeção
XOR Lógica de negar a junção

X1 X2 X1 AND X2 X1 OR X2 NOT X1 NOT X2 X1 XOR X2


1 1 1 1 0 0 0
1 0 0 1 0 1 1
0 1 0 1 1 0 1
0 0 0 0 1 1 0
Como explicar isso?
Se tiver sol, fim de semana, vou à praia
X1 X2 X1 E X2
Tiver de sol For fim de semana Se tiver de sol E for fim de semana, vou à praia
Tiver de sol Não for fim de semana Se tiver de sol E não for fim de semana não vou à praia
Não tiver de sol For fim de semana Se não tiver de sol E for fim de semana não vou à praia
Não tiver de sol Não for fim de semana Se não tiver de sol E não for fim de semana não vou à praia

X1 X2 X1 OU X2
Tiver de sol For fim de semana Se tiver de sol OU for fim de semana, vou à praia
Tiver de sol Não for fim de semana Se tiver de sol OU não for fim de semana vou à praia
Não tiver de sol For fim de semana Se não tiver de sol OU for fim de semana vou à praia
Não tiver de sol Não for fim de semana Se não tiver de sol OU não for fim de semana não vou à praia
Palavras reservadas
ADD ALL ALTER
ANALYZE AND AS
ASC BEFORE BETWEEN
BIGINT BINARY BLOB
BOTH BY CASCADE
CASE CHANGE CHAR
CHARACTER CHECK COLLATE
COLUMN COLUMNS CONSTRAINT
CONVERT CREATE CROSS
CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP
CURRENT_USER DATABASE DATABASES
DAY_HOUR DAY_MICROSECOND DAY_MINUTE
Palavras reservadas
ADD ALL ALTER
DAY_SECOND DEC DECIMAL
DEFAULT DELAYED DELETE
DESC DESCRIBE DISTINCT
DISTINCTROW DIV DOUBLE
DROP DUAL ELSE
ENCLOSED ESCAPED EXISTS
EXPLAIN FALSE FIELDS
FLOAT FLOAT4 FLOAT8
FOR FORCE FOREIGN
FROM FULLTEXT GRANT
GROUP HAVING HIGH_PRIORITY
Palavras reservadas
ADD ALL ALTER
HOUR_MICROSECOND HOUR_MINUTE HOUR_SECOND
IF IGNORE IN
INDEX INFILE INNER
INSERT INT INT1
INT2 INT3 INT4
INT8 INTEGER INTERVAL
INTO IS JOIN
KEY KEYS KILL
LEADING LEFT LIKE
LIMIT LINES LOAD
LOCALTIME LOCALTIMESTAMP LOCK
Palavras reservadas
ADD ALL ALTER
LONG LONGBLOB LONGTEXT
LOW_PRIORITY MATCH MEDIUMBLOB
MEDIUMINT MEDIUMTEXT MIDDLEINT
MINUTE_MICROSECOND MINUTE_SECOND MOD
NATURAL NOT NO_WRITE_TO_BINLOG
NULL NUMERIC ON
OPTIMIZE OPTION OPTIONALLY
OR ORDER OUTER
OUTFILE PRECISION PRIMARY
PRIVILEGES PROCEDURE PURGE
READ REAL REFERENCES
Palavras reservadas
ADD ALL ALTER
REGEXP RENAME REPLACE
REQUIRE RESTRICT REVOKE
RIGHT RLIKE SECOND_MICROSECOND
SELECT SEPARATOR SET
SHOW SMALLINT SONAME
SPATIAL SQL_BIG_RESULT SQL_CALC_FOUND_ROWS
SQL_SMALL_RESULT SSL STARTING
STRAIGHT_JOIN TABLE TABLES
TERMINATED THEN TINYBLOB
TINYINT TINYTEXT TO
TRAILING TRUE UNION
Palavras reservadas
ADD ALL ALTER
UNIQUE UNLOCK UNSIGNED
UPDATE USAGE USE
USING UTC_DATE UTC_TIME
UTC_TIMESTAMP VALUES VARBINARY
VARCHAR VARCHARACTER VARYING
WHEN WHERE WITH
WRITE XOR YEAR_MONTH
ZEROFILL
Facilitando as coisas
Código Tradução Exemplo
ALL É uma subconsulta que retorna SELECT * FROM tabela WHERE campo > 10 AND
um conjunto de resultados com campo > 15
uma coluna substituindo o SELECT * FROM tabela WHERE campo >
operador AND. ALL(10, 15)
ANY Quando a condição ANY é seguida SELECT * FROM tabela WHERE campo > 10 OR
por uma lista, o otimizador campo > 15
expande a condição inicial para SELECT * FROM tabela WHERE campo >
todos os elementos da lista e os ANY(10, 15)
codifica em conjunto com os
operadores OR
SOME SOME E ANY tem a mesmas
condições

* Não funciona em todos os SGBD`s


Mais tipos de
dados?
• Você conhece os tipos de
dados mais comuns, mas há
alguns detalhes que podem
ajudar a deixar suas colunas
ainda mais refinadas.
Olhando de
perto
Vamos olhar de perto para
alguns novos tipos de
dados, em um olhar mais
aprofundado naqueles
que já estamos usando.
Tipos de dados INT (número
inteiro)
Formato Representação
BOOLEAN O tipo de dados booleano que permite que armazene "verdadeiro" ou "falso". Na
prática o sistema SQL está armazenando 1 ou "true" para verdadeiro, 0 ou "false".
... excluido=0 ou ... excluido=false ou então ... excluido=1 ou ... excluido=true
INT Pode armazenar valores na faixa de 0 a 4294967295 isso se você usar somente os
positivos.
INT(SIGNED) INT ASSINADA armazena de -2147483648 a 2147483647 isso se você usar somente os
positivos.
SMALLINT Armazena SIGNED de –32768 a 32767 e INSIGNED de 0 a 65535.
BIGINT Armazena SIGNED de –9223372036854775808 a 9223372036854775807 e INSIGNED
de 0 a 18446744073709551615.
TINYINT Armazena SIGNED de –128 a 127 e INSIGNED de 0 a 255.
MEDIUMINT Armazena SIGNED de –8388608 a 8388607 e INSIGNED de 0 a 16777215.
Tipos de dados DECIMAL
(número DECIMAL)
Formato Representação
FLOAT(n,d) Flutuante dados de números de precisão de -1.79E + 308 para 1.79E + 308.
O parâmetro n indica se o campo deve conter 4 ou 8 bytes. float (24) tem um campo de
4 bytes e float (53) tem um campo de 8 bytes. valor padrão de n é de 53.
DOUBLE(n,d) Um grande número com um ponto decimal flutuante. O número máximo de dígitos
pode ser especificado no parâmetro de tamanho.
DECIMAL(n,d) Um duplo armazenada como uma cadeia, permitindo um ponto decimal fixo. O número
máximo de dígitos pode ser especificado no parâmetro de tamanho.
Tipos de dados DATE e TIME
Formato Representação
DATE Armazena data no formato YYYY-MM-DD 2021-08-01
DATETIME Armazena data e hora no formato YYYY-MM-DD HH:MM:SS  2021-08-01 22:12:59
TIMESTAMP Armazena data e hora no formato YYYYMMDDHHMMSS 20210801221259
TIME Armazena hora no formato HH:MM:SS 22:12:59
YEAR Armazena um ano de dois dígitos ou formato de quatro dígitos. YYYY  2021

Quando utiliza o tipo date ou time, você pode modificar o que seu Sistema exibe. Funções fazem isso de
acordo com o Sistema. Aqui está um exemplo da função no MySQL. DATE_FORMAT()
Suponha que você tivesse na tabela algumas_datas a coluna uma_data 

SELECT DATE_FORMAT(uma_data, '%M %Y'),  FROM algumas_datas


uma_data DATE_FORMAT(uma_data, '%M %Y')
2007-08-31 Agosto 2007
1925-01-22 Janeiro 1925
Tipos de dados TEXTO
Formato Representação
CHAR(n) Armazena um inteiro alfanumérico de 0 a 255. Alguns conjuntos de caracteres UNICODE
VARCHAR(n) armazenam os dados em ASCII e utilizam 1 byte ou 8 bits para representar um caractere.
TINYTEXT Detém uma cadeia com um comprimento máximo de 255 caracteres
TEXT Detém uma cadeia com um comprimento máximo de 65.535 caracteres
BLOB Para BLOBs (objetos binários grandes). Armazena até 65.535 bytes de dados
MEDIUMTEXT Detém uma cadeia com um comprimento máximo de 16.777.215 caracteres
MEDIUMBLOB Para BLOBs (objetos binários grandes). Armazena até 16.777.215 bytes de dados
LONGTEXT Detém uma cadeia com um comprimento máximo de 4,294,967,295 caracteres
LONGBLOB Para BLOBs (objetos binários grandes). Armazena até 4,294,967,295 bytes de dados
Como é bom
desenhar!
• Você consegue fazer um
desenho de tudo que
acontece ao seu redor?
Modelagem Conceitual

• A técnica de modelagem de dados mais difundida e utilizada é a


abordagem entidade-relacionamento (ER). Nesta técnica, o modelo
de dados é representado através de um modelo entidade-
relacionamento (modelo ER) geralmente representado por um
diagrama entidade-relacionamento (DER). 
Modelagem Conceitual

• ENTIDADE
• Uma entidade representa um conjunto de objetos da realidade
modelada. Como o objetivo de um modelo ER é modelar de forma
abstrata um BD, interessa-nos somente os objetos sobre os quais se
deseja manter informações.

• Olhando de perto: Conjunto de objetos


Pessoa que assemelham o nosso dia-a-dia e sobre
os quais se pretende armazenar dados.
Modelagem Conceitual

• ATRIBUTO
• Atributos são representados graficamente conforme mostra a figura
8. A figura expressa que cada ocorrência de PESSOA tem associado
exatamente um nome, uma data de nascimento, um endereço e um
telefone.

• Olhando de perto: Dado que é associado a


Nome Código cada ocorrência de uma entidade ou de um
relacionamento. 
Modelagem Conceitual

• Relacionamento
• Atributos são representados graficamente conforme mostra a figura
8. A figura expressa que cada ocorrência de PESSOA tem associado
exatamente um nome, uma data de nascimento, um endereço e um
telefone.

• Olhando de perto: Dado que é associado a


Relacionamento cada ocorrência de uma entidade ou de um
relacionamento. 
Primeiro passo eu faço

• Fique atento às Entidades-Relacionamento ER para o diagrama :

Um

Atributo Muitos
Entidade Relacionamento Atributo Chave
primaria
Um somente um

Zero ou um

Um ou muitos

Zero ou muitos
Resolvendo o problema
• Lanchonete Neide Leite
• Neide Leite é um estabelecimento comercial popular
especializado em pequenas refeições rápidas, lanches
e sanduíches mesmo fora do horário normal das refeições. 
• Normalmente é vendido o lanche à escolha do cliente antes
de ser feito. Por isso, Neide tem que ter muito cuidado para
não misturar as coisas ou até mesmo passar sem receber.
• Graciano utiliza um painel para anotar cada pedido, mas
são tantos clientes que o painel está cheio
Resolvendo o problema
• Lanchonete Neide Leite
• Neide Leite é um estabelecimento comercial popular
especializado em pequenas refeições rápidas, lanches
e sanduíches mesmo fora do horário normal das refeições. 
• Normalmente é vendido o lanche à escolha do cliente antes
de ser feito. Por isso, Neide tem que ter muito cuidado para
não misturar as coisas ou até mesmo passar sem receber.
• Graciano utiliza um painel para anotar cada pedido, mas
são tantos clientes que o painel está cheio
Primeiro passo eu faço

• Fique atento às Entidades-Relacionamento ER para o diagrama :

Código Código

Nome Nome

Valor CPF

(1,n)                                                (1,1)
Lanche Pedido Cliente
Tente você
mesmo
• Agora chegou a sua vez.
Veja um problema que
aparece no seu dia-a-dia
para elaborar um modelo
conceitual de projeto para
resolver este problema.
• Pegue o limão e faça uma
limonada.
Cardinalidade de relacionamentos
• Cardinalidade 
• Para fins de projeto de banco de dados, uma propriedade
importante de um relacionamento é a de quantas ocorrências de
uma entidade podem estar associadas a uma determinada
ocorrência através do relacionamento. Esta propriedade é chamada
de cardinalidade de uma entidade em um relacionamento. Há duas
cardinalidades a considerar: a cardinalidade máxima e a
cardinalidade mínima.
• Olhando de perto: Cardinalidade (mínima, máxima) de entidade
em relacionamento = Número (mínimo, máximo) de ocorrências
de entidade associadas a uma ocorrência da entidade em
questão através do relacionamento. 
Cardinalidade de relacionamentos

• Em um DER, um relacionamento é representado através da


modelagem a seguir:

• Um departamento de uma empresa pode contratar no máximo 120


pessoas.

Departamento Lotação Empregado


Cardinalidade de relacionamentos
• Este modelo expressa que o BD mantém informações sobre:
• um conjunto de objetos classificados como empregado (entidade
EMPREGADO); 
• um conjunto de objetos classificados como departamentos
(entidade DEPARTAMENTO); e 
• um conjunto de associações, cada uma ligando um departamento a
uma pessoa (relacionamento LOTAÇÃO). 
Departamento Lotação Empregado
Cardinalidade máxima
Entidade EMPREGADO tem cardinalidade máxima 1 no
relacionamento LOTAÇÃO. 
• Isso significa que uma ocorrência de EMPREGADO pode estar
associada a no máximo uma ocorrência de DEPARTAMENTO ou, em
outros termos, que um empregado pode estar lotado em no máximo
um departamento.

1
Departamento Lotação Empregado
Cardinalidade máxima
Entidade DEPARTAMENTO tem cardinalidade máxima 120 no
relacionamento LOTAÇÃO.  
• Isso significa que uma ocorrência de DEPARTAMENTO pode estar
associada a no máximo 120 ocorrências de EMPREGADO ou, em
outros termos, que um departamento pode ter nele lotado no
máximo 120 empregados.

Departamento Lotação Empregado


u
Cardinalidade máxima
Entidade DEPARTAMENTO tem cardinalidade máxima 120 no
relacionamento LOTAÇÃO.  
• Acardinalidade máxima um (1); e
• Acardinalidade máxima ilimitada, usualmente chamada de
cardinalidade máxima "muitos" e referida pela letra n.

1
Departamento Lotação Empregado
u
Cardinalidade mínima

• Olhando de perto: A cardinalidade mínima 1 também recebe a


denominação de "associação obrigatória", já que ela indica que
o relacionamento deve obrigatoriamente associar uma
ocorrência de entidade a cada ocorrência da entidade em
questão. 

0
Departamento Lotação Empregado

1
Cardinalidade mínima
Além da cardinalidade máxima, outra informação que pode ser
representada por um modelo ER é o número mínimo de ocorrências
de entidade associadas a uma ocorrência de uma entidade através de
um relacionamento. Para fins de projeto de BD, consideram-se apenas
duas cardinalidades mínimas: a cardinalidade mínima 0 e a
cardinalidade mínima 1.

0
Departamento Lotação Empregado

1
Classificação de relacionamentos
unários
A cardinalidade máxima pode ser usada
para classificar relacionamentos binários. PESSOAS
Um relacionamento unário é aquele cujas
ocorrências contêm duas ocorrências de Esposa       1                Marido   1  
entidade. Podemos classificar os
relacionamentos binários em n:n, 1:n e Casamento
1:1. 
PESSOAS

Cliente      n                                 n    Vendedor

Venda
Classificação de relacionamentos
binários
Cria-se uma relação para cada entidade
participante no relacionamento da
entidade do lado “1” na entidade do lado
“N” 

Cliente venda Vendedor


Classificação de relacionamentos
Ternários
Cria-se uma relação para cada entidade
participante no relacionamento da
entidade do lado “1” na entidade do lado
“N” 

Fábrica produzir Produto

Matéria prima
Classificação de relacionamentos
Ternários
Cria-se uma relação para 3
entidades participantes no
relacionamento.

Fábrica produzir Produto

Fábrica
Exemplos de relacionamentos
Relacionamentos 1:N

1                                                            n
Sala Lotação Aluno

n                                                            1
Dependente Empregado
Exemplos de relacionamentos
Relacionamentos N:N

n                                                            n
Engenheiro Atuação Projetos

n                                                            n
Paciente Consulta Médico
Exemplos de relacionamentos
Relacionamentos 1:1

1                                                             1
Pessoa "marido" casamento Pessoa "mulher"
Cardinalidade máxima e mínima
A imagem abaixo apresenta um exemplo de um modelo ER mais
abrangente que os anteriores, envolvendo as entidades e
relacionamentos com as cardinalidades máxima e mínima.

1,1 0,n
Departamento Lotação Empregado
A jornada
continua
• Vamos continuar
resolvendo os
problemas que
aparecem em nosso dia-
a-dia.
• Pegue o limão e faça uma
limonada.
Diagrama de Entidade Relacionamento
(DER)
Ao falar de MER, sempre nos deparamos com o Diagrama de Entidade
Relacionamento (DER). Na verdade, o DER nada mais é que a
representação gráfica do que foi escrito no MER.

Funcionários Dependentes
Entidades do DER
Representam categorias de fatos do mundo real, sejam eles concretos
ou abstratos, como empregados, departamentos, despesas etc.

Funcionário
Entidades Fraca
Entidade fraca é uma entidade que não possui existência própria (sua
existência depende da existência de outra entidade) ou que para ser
identificada depende da identificação de outra entidade.

Filhos
Entidades Fraca
Entidade fraca é uma entidade que não possui existência própria (sua
existência depende da existência de outra entidade) ou que para ser
identificada depende da identificação de outra entidade.

Funcionários Dependentes
Entidades Fraca
Entidade fraca normalmente se relaciona com a entidade forte com as
seguintes cardinalidade máxima de 1 para 1.

Funcionários Dependentes
Atributos do DER
Representam uma propriedade de uma entidade ou de um
relacionamento, como salário de um empregado ou o tempo que um
empregado estará alocado em um projeto.

Nome
Atributos do DER
Representam uma propriedade de uma entidade ou de um
relacionamento, como salário de um empregado ou o tempo que um
empregado estará alocado em um projeto.

Nome: Heder Vieira de Lima


Nome Data de Nasc.: 31/05/2005
Sexo: Masculino
Atributos opcionais
Atributos com propriedades que podem assumir NULL. São indicados
por um traço que corta a linha que liga o atributo à entidade ou
relacionamento.

Facebook
Atributos opcionais
Atributos com propriedades que podem assumir NULL. São indicados
por um traço que corta a linha que liga o atributo à entidade ou
relacionamento.

Rede social: Facebook/hedervieiradelima


Facebook Tamanho do calçado: 43
Cor favorita: Verde
Atributos Chave
Tipo de atributo cujos valores são distintos para cada entidade em um
conjunto de entidades. O CPF de um funcionário, por exemplo,
constitui um atributo-chave para o tipo de entidades FUNCIONÁRIO.

CPF
Atributos Chave
Tipo de atributo cujos valores são distintos para cada entidade em um
conjunto de entidades. O CPF de um funcionário, por exemplo,
constitui um atributo-chave para o tipo de entidades FUNCIONÁRIO.

CPF: 022.552.853-89
CPF Matrícula: 5854
ID_Altomatico: 258
Atributos compostos
Representam uma abstração de outros atributos, como um endereço
que abstrai (agrega) outros dados como rua, CEP, cidade etc.

Rua

Bairro
Endereço

Cidade/Estado
Atributos compostos
Representam uma abstração de outros atributos, como um endereço
que abstrai (agrega) outros dados como rua, CEP, cidade etc.

Endereço:
Rua Rua RP3, n 25, Setor Guará, Ceres, GO
Bairro
Endereço Rua: RP3
Cidade/Estado Número: 25
Setor: Guará
Cidade: Ceres
Estado: GO
Atributos multivalorados
Atributos com propriedades que podem assumir mais de um valor,
como os números de telefone de um departamento.

Telefone
Atributos multivalorados
Atributos com propriedades que podem assumir mais de um valor,
como os números de telefone de um departamento.

Telefone: (62) 95856-5856, (62) 89657-


9685, (62) 98443-6114

E-mail: heder.lima@senacgoon.com.br,
Telefone
heder.lima@sescgoon.com.br,
heder.lima@go.senac.br

Diversão Favorita: Andar de skate, voar de


parapente, saltar de paraquedas
Olhando de
perto
Vamos bisbilhotar a
vida de Greg.
Poder do
cérebro
Considere os bancos
de dados abaixo
1: Banco de dados para biblioteca
• Elabore um projeto através
de uma Modelagem
Conceitual que supre as
necessidades de um
bibliotecário.
• Crie a modelagem ER
identificando as entidades. CPF

• Determine se as atribuições
são necessárias, opcionais
ou chaves.
2: Banco de dados de Banco
• Elabore um projeto através
de uma Modelagem
Conceitual que supre as
necessidades de um cliente
em um banco.
• Crie a modelagem ER
identificando as entidades. CPF

• Determine se as atribuições
são necessárias, opcionais
ou chaves.
3: Banco de dados de Supermercado
• Elabore um projeto através
de uma Modelagem
Conceitual que relacione
duas Entidades.
• Crie a modelagem ER
identificando as entidades.
• Determine se as atribuições CPF

são necessárias, opcionais


ou chaves.

Você também pode gostar