Escolar Documentos
Profissional Documentos
Cultura Documentos
SQL - Introdução
SQL - Introdução
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
PIAUÍ Linguagens para
Banco de Dados
Campus Piripiri
SQL
PROF.: JONATHAS JIVAGO DE ALMEIDA CRUZ
SQL 2
ENTÃO, CUIDADO!!! ☺
Usar um banco de Dados 20
Aluno
matricula nome idade endereco
Alunos
matricula nome idade endereco
1 Juca 32 Rua Melinda
2 Melissa 20 Rua Dom Pedro
3 Thiago 17 Rua Quinze
Excluir Atributos
Comando para renomear o nome de uma tabela:
mysql> ALTER TABLE pessoas RENAME TO cadastros;
Comando para adicionar um atributo:
mysql> ALTER TABLE pessoas ADD COLUMN idade INT(3);
Comando para alterar o tipo de um atributo:
mysql> ALTER TABLE pessoas MODIFY idade INT(5);
Comando para remover um atributo:
mysql> ALTER TABLE pessoas DROP idade;
Comando para renomear um atributo:
mysql> ALTER TABLE pessoas CHANGE idade age INT(5);
Configurar valor default
mysql> ALTER TABLE pessoas ALTER idade SET DEFAULT 5;
Atualizar campos 35
Mapeamento de
Relacionamentos
Temos a seguinte situação: 38
id id
1 N
nome editora Publicar livro titulo
email preco
Relacionamentos e chaves 39
estrangeiras:
Devemos seguir as seguintes etapas:
1. As entidades são transformadas em tabelas;
2. Os atributos são transformados em colunas da tabela
3. Em seguida deve ser mapeado o relacionamento, obedecendo-
se a cardinalidade. OBS.: Para cada tipo de cardinalidade,
temos regras a serem seguidas.
Mapeando Relacionamento com 40
Cardinalidade 1:N
Como resultados das etapas 1 e 2 temos a criação das tabelas:
Editora
id nome email
Livro
Nesse momento, devemos
id titulo preco idEditora
mapear o relacionamento
entre as tabelas!
Adicionando Chave Estrangeira 41
das tabelas
Comandos para exibir a estrutura da tabela
mysql> EXPLAIN <tabela>;
mysql> DESCRIBE <tabela>;
mysql> DESC <tabela>;
mysql> SHOW COLUMNS FROM <tabela>;
Os comandos listados acima não exibem os índices e nem as
chaves estrangeiras presentes nas tabelas. O comando que faz
isso é o seguinte:
mysql> SHOW CREATE TABLE <tabela>;
Remover Chave Estrangeira 44
cpf
codigo
1 1
nome Professor Gerenciar Projeto
Descrição
endereco
Mapeamento da Cardinalidade 46
1:1
Como resultados das etapas 1 e 2 temos a criação das tabelas:
Professor
cpf nome endereco
Projeto
Nesse momento, devemos
codigo descricao cpf
mapear o relacionamento
entre as tabelas!
Mapeamento da Cardinalidade 47
1:1
Como resultados das etapas 1 e 2 temos a criação das tabelas:
Professor
CPF nome endereco codigo
Projeto
Nesse momento, devemos
codigo descricao
mapear o relacionamento
entre as tabelas!
Mapeando de Relacionamento 49
CPF
codigo
N N
nome Professor Ministrar Disciplina
nome
endereco
Mapeamento da Cardinalidade 50
N:N
Como resultados das etapas 1 e 2 temos a criação das tabelas:
Professor
cpf nome endereco
cpf codigo
Disciplina
codigo nome
Nesse mapeamento, devemos
criar uma nova tabela!
51
Mapeamento de
Particularidades do MER
Mapeamento de Atributo 52
multivalorado
CPF Nome
Professor Telefone
Atributo multivalorado mapeado 53
telefone_professor
cpf telefone
CPF Nome
Rua
Cidade
Professor Endereço
Estado
CEP
Telefone
Atributo composto mapeado para 55
o modelo relacional
Como resultados das etapas 1 e 2 temos a criação da tabelas:
professor
cpf nome endereco
rua cidade estado cep
telefone_professor
cpf telefone
recursivo
matricula Nome
Aluno
1 N
Monitorar
Mapeamento de relacionamento 57
recursivo
Como resultados das etapas 1 e 2 temos a criação da tabela:
aluno
matricula nome matricula_monitor
Mapeamento de relacionamentos
Ternários,
Quaternários,
...
Mapeamento de generalizações/especializações
Mapeamento de agregação