SlideShare a Scribd company logo
1 of 47
Download to read offline
Banco de dados: teoria, organização e comandos de umBanco de dados: teoria, organização e comandos de um
SGBD relacionalSGBD relacional
Prof. Alex Camargo
alexcamargoweb@gmail.com
UNIVERSIDADE FEDERAL DO PAMPA
CURSO DE ENGENHARIA DE COMPUTAÇÃO
DISCIPLINA DE ENGENHARIA DE SOFTWARE
AULA 01 DE 02
Maio/2018
2
I. Organização da aula
Esta aula está organizada da seguinte maneira:
 Conceitos gerais de SGBDs
 Modelagem de dados relacional
 Linguagem SQL
 Exercícios

 Referências
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
3
II. Apresentação do professor
Formação acadêmica:
 Bacharel em Sistemas de Informação (URCAMP, 2011)
TCC: Web sistema integrado a uma rede social para
academias de ginástica.
Orientador: Prof. Abner Guedes
 Especialista em Sistemas Distribuídos com Ênfase em
Banco de Dados (UNIPAMPA, 2013)
TCC: Interligando bases de dados do sistema Controle de
Marcas e Sinais utilizando o MySQL Cluster.
Orientador: Prof. Érico Amaral
Coorientador: Prof. Rafael Bastos (IDEAU)
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
4
II. Apresentação do professor
Formação acadêmica:
 Mestre em Engenharia de Computação (FURG, 2017)
Dissertação: EN-MUTATE: predição do impacto de mutações
pontuais em proteínas utilizando Ensemble Learning.
Orientadora: Profa. Karina Machado
Coorientador: Prof. Adriano Werhli
 Doutorando em Ciência da Computação (UFPEL)
Tese: Em definição.
Orientador: Aluno especial
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
5
II. Apresentação do professor
Principais projetos acadêmicos:
 Bioinformática Estrutural de Proteínas: modelos,
algoritmos e aplicações biotecnológicas.
Universidade: FURG/UFMG/UFPB
Área: Bioinformática
 Algo+: um portal para o apoio ao ensino de Algoritmos.
Universidade: UNIPAMPA
Área: Informática na educação
 Revisor do periódicos ICCEEg (ISSN 2236-0093) e CCEI
(ISSN 2356-6635)
Universidades: FURG/URCAMP
Área: Multidisciplinar
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
6
II. Apresentação do professor
Principal atividade profissional:
 Sócio-proprietário da APUS Digital.
Projeto: Aplicativo Gás Connect
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
7
II. Apresentação do professor
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
8
II. Apresentação do professor
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
9
II. Apresentação do professor
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
10
III. Objetivos da aula
Dentre os principais objetivos, podem ser elencados:
 Apresentar a teoria concernente a SGBDs, tabelas e seus
relacionamentos.
 Executar instruções DDL (definição de dados) na linguagem
SQL.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
11
1. CONCEITOS GERAIS DE SGBDs
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
12
1.1 Introdução
Um Banco de Dados (BD, em inglês DB, database) são conjuntos de
dados com uma estrutura regular que tem como objetivo organizar
uma informação.
 Normalmente agrupa informações utilizadas para um mesmo
fim.
 Podem ser organizados em diferentes arquiteturas.
 Se tornou um dos principais componentes dos sistemas de
informação.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
13
1.2 O modelo relacional
O modelo relacional é uma teoria matemática criada por Edgar
Frank Codd em 1970 para descrever como as bases de dados
deveriam funcionar.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Modelo Conceitual versus Modelo Relacional
14
1.2 O modelo relacional
De acordo com o Princípio de Informação, toda informação tem de
ser representada como dados; qualquer tipo de atributo representa
relações entre conjuntos de dados.
 A estrutura fundamental do modelo relacional são as tabelas.
 Uma tabela é constituída por um ou mais atributos (colunas)
que traduzem o tipo de dado a armazenar.
 Cada instância (linha) é chamada de tupla (registro).
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
15
1.2 O modelo relacional
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Exemplos de tabelas sob o modelo relacional.
16
1.3 SGBDs
Um banco de dados informatizado é usualmente mantido e
acessado por meio de um software conhecido como Sistema
Gerenciador de Banco de Dados (SGBD).
 SGBDs: programas que permitem ao usuário definir, construir
e manipular bases de dados.
 Muitas vezes o termo banco de dados é usado como sinônimo
de SGDB (afirmativa errada).
 Os SGBDs estão disponíveis em diferentes tipos:
relacionais, orientados a objetos, objeto relacional, etc.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
17
1.3 SGBDs
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Exemplos de SGBDs.
18
1.4 Arquiteturas tradicionais
Alguns aspectos relevantes devem ser considerados para atingir
eficiência e eficácia nos sistemas desenvolvidos, a fim de atender
usuários nos mais variados domínios de aplicação.
 Centralizados
 Cliente-servidor
 Paralelos
 Distribuídos
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
19
2. MODELAGEM DE DADOS RELACIONAL
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
20
2.1 Introdução
Para que seja possível implementar de forma correta um BD
utilizando algum SGBD, é preciso realizar a modelagem dos dados
basicamente em 3 etapas:
 1. Entendimento do problema;
 2. Construção do modelo ER (entidade e relacionamento);
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
21
2.1 Introdução
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Diagrama ER (Cliente x Telefone).
22
2.1 Introdução
Para que seja possível implementar de forma correta um BD
utilizando algum SGBD, é preciso realizar a modelagem dos dados
basicamente em 3 etapas:
 1. Entendimento do problema;
 2. Construção do modelo ER (entidade e relacionamento);
 3. Implementação (SGBD).
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
23
2.1 Introdução
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Diagrama Relacional.
24
2.2 Tipos de chaves
No modelo relacional íntegro a única forma de relacionar dados que
existem em uma tabela com dados que existem em outra tabela é
através de atributos comuns.
 Chave primária (Primary key - PK): uma coluna ou um
grupo de colunas que assegura a unicidade das linhas dentro
de uma tabela.
 Chave estrangeira (Foreign key - FK): estabelece a
restrição de integridade referencial entre duas tabelas.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
25
2.2 Tipos de chaves
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Diagrama Relacional com destaque para chave primária (PK) e estrangeira (FK)
PK
FK
26
2.3 Tipos de dados
Em SGBDs*, cada campo (coluna) de uma tabela deverá possuir
um nome e um tipo de dado
 CHAR(n): aceita qualquer valor. O texto tem comprimento fixo.
Ex.: `Cpf` CHAR(14)
 VARCHAR(n): aceita qualquer valor. O texto é de comprimento
variável.
Ex.: `Nome` VARCHAR(50)
 TEXT: aceita qualquer valor. O texto é de comprimento
variável em cada configuração de SGBD.
Ex.: `Observacoes` TEXT
 INT: aceita valores numéricos inteiros.
Ex.: `QuantidadeFilhos` INT
* principais tipos de dados do SGBD MySQL¹
27
2.3 Tipos de dados
Em SGBDs*, cada campo (coluna) de uma tabela deverá possuir
um nome e um tipo de dado.
 FLOAT: número de ponto flutuante de precisão simples.
Ex.: `Peso` FLOAT
 DATE: armazena valores de data.
Ex.: `DataNascimento` DATE
 TIME: armazena valores de hora.
Ex.: `Chegada` TIME
* principais tipos de dados do SGBD MySQL¹
28
3. LINGUAGEM SQL
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
29
3.1 Introdução
Structured Query Language (SQL) é a linguagem padrão dos
os bancos de dados relacionais. Seus comandos são divididos em:
 DDL (Data Definition Language): destinada a criação do
banco de dados, tabelas, além das relações existentes.
Ex.: CREATE, ALTER e DROP.
 DML (Data Manipulation Language): destinados a
consultas, inserções, exclusões e alterações em um ou mais
registros de uma ou mais tabelas.
Ex.: SELECT, INSERT, UPDATE e DELETE.
 DCL (Data Control Language): dispõe de comandos de
controle.
Ex.: GRANTE e REVOKE.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
30
3.2 Comando CREATE DATABASE
Utilizado para criar um novo banco de dados.
 CREATE DATABASE Nome_do_Banco;
Exibe os bancos de dados:
 SHOW DATABASES;
Seleciona um banco de dados:
 USE Nome_do_Banco;
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
31
3.2. Comando CREATE DATABASE
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando CREATE DATABASE.
32
3.3 Comando DROP DATABASE/SCHEMA
Utilizado para excluir um banco de dados.
 DROP SCHEMA Nome_do_Banco;
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
33
3.3. Comando DROP DATABASE/SCHEMA
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando DROP DATABASE/SCHEMA.
34
3.4 Comando CREATE TABLE
Utilizado para criar uma nova tabela.
 CREATE TABLE Nome_da_Tabela (
Atributo1 Tipo,
Atributo2 Tipo,
AtributoN Tipo,
PRIMARY KEY (Atributo1)
);
Exibe as tabelas de um determinado banco de dados.
 SHOW TABLES;
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
35
3.4. Comando CREATE TABLE
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando CREATE TABLE.
36
3.5 Comando CREATE TABLE (com FK)
Utilizado para criar uma nova tabela que contenha chaves
estrangeiras.
 CREATE TABLE Nome_da_Tabela (
Atributo1 Tipo,
Atributo2 Tipo,
AtributoN Tipo,
PRIMARY KEY (Atributo1),
CONSTRAINT Nome_da_Relação
FOREIGN KEY (Atributo2)
REFERENCES Nome_da_Tabela_Referenciada (Atributo_Ref)
);
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
37
3.5. Comando CREATE TABLE
(com chave estrangeira)
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando CREATE TABLE (com chave estrangeira).
38
3.6 Comando ALTER TABLE
Utilizado para modificar (adicionar, alterar ou eliminar) colunas (ou
parâmetros) da estrutura de uma tabela.
 ALTER TABLE Nome_da_Tabela [ADD][CHANGE][DROP
COLUMN];
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
39
3.6. Comando ALTER TABLE
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando ALTER TABLE.
40
3.7 Comando DROP TABLE
Utilizado para excluir uma tabela.
 DROP TABLE Nome_da_Tabela;
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
41
3.7 Comando DROP TABLE
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Comando DROP TABLE.
42
4. EXERCÍCIOS
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
43
4.1 Atividade 1
Utilize comandos SQL para as seguintes situações (baseado na
figura e configuração de servidor dos slides subsequentes):
 a) Criar um banco de dados;
 b) Criar uma tabela;
 c) Adicionar uma nova coluna chamada "Valor";
 d) Alterar a coluna "Empresa" para "Parceiro";
 e) Eliminar a coluna "Valor";
 f) Eliminar a tabela criada;
 g) Eliminar o banco de dados criado.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
44
4.1. Atividade 1
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
Figura. Exemplo de planilha de uma agência web.
45
4.1 Atividade 1
Passos para configurar o servidor remoto APUS Digital:
 a) Abra a ferramenta MySQL Workbench;
 b) Clicar no ícone “+” para adicionar uma nova conexão;
 c) Dados de conexão:
 Connection name: Unipampa
 Hostname: apus.digital
 Port: 3306
 Username: bifljuup_[6 primeiros caracteres do nome]
 Password: e-mail cadastrado na Universidade
 d) Clicar em Test Connection;
 e) Clicar em Ok;
 f) Selecionar a conexão criada.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
46
4.2 Atividade 2 (via Moodle)
Implementar um banco de dados (relacional) para o "Atendimento
acadêmico" docente/discente utilizando comandos SQL.
A implementação deve apresentar 3 tabelas que atendam as
seguintes necessidades: cadastro de aluno, cadastro de professor e
agendamento. A implementação deve conter, obrigatoriamente,
pelo menos:
 a) 3 colunas (atributos) por tabela;
 b) 1 Chave primária;
 c) 1 Chave estrangeira;
 d) 3 tipos de dados diferentes.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
47
Referências
DAMAS, Luís. SQL, Structured query language. Tradução Elvira Maria Antunes
Uchôa. 6a Edição, Rio de Janeiro: LTC, 2007.
MEIRA, Regilan. Banco de Dados (Apostila). Instituto Federal da Bahia -
Campus Ilhéus, 2013.
Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo

More Related Content

What's hot

Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERRangel Javier
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoLeinylson Fontinele
 
Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfMarcelo Silva
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01Rangel Javier
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Leinylson Fontinele
 
Aula de SQL - Básico
Aula de SQL - BásicoAula de SQL - Básico
Aula de SQL - BásicoAirton Zanon
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Leinylson Fontinele
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Leinylson Fontinele
 
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I  Aula 02 - Introdução aos Bancos de DadosBanco de Dados I  Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I Aula 02 - Introdução aos Bancos de DadosLeinylson Fontinele
 
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...Leinylson Fontinele
 
Conceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasConceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasClayton de Almeida Souza
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 

What's hot (20)

Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - Apresentação
 
Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdf
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Banco De Dados
Banco De DadosBanco De Dados
Banco De Dados
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
 
Aula de SQL - Básico
Aula de SQL - BásicoAula de SQL - Básico
Aula de SQL - Básico
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
 
Banco de Dados - Conceitos Básicos
Banco de Dados - Conceitos BásicosBanco de Dados - Conceitos Básicos
Banco de Dados - Conceitos Básicos
 
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I  Aula 02 - Introdução aos Bancos de DadosBanco de Dados I  Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
 
SGBD
SGBDSGBD
SGBD
 
A Linguagem sql
A Linguagem sqlA Linguagem sql
A Linguagem sql
 
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...
 
Conceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasConceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de Sistemas
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Modelagem de dados
Modelagem de dados Modelagem de dados
Modelagem de dados
 

Similar to SGBD SQL Aula

Banco dados i prof ivan (acesse www.portalgsti.com.br)
Banco dados i prof ivan (acesse  www.portalgsti.com.br)Banco dados i prof ivan (acesse  www.portalgsti.com.br)
Banco dados i prof ivan (acesse www.portalgsti.com.br)Andre Sidou
 
gcc214-slides-1-introducao-conceitos-arquitetura.pdf
gcc214-slides-1-introducao-conceitos-arquitetura.pdfgcc214-slides-1-introducao-conceitos-arquitetura.pdf
gcc214-slides-1-introducao-conceitos-arquitetura.pdfSlowtfk
 
Brevíssima introdução a bancos de dados relacionais
Brevíssima introdução a bancos de dados relacionaisBrevíssima introdução a bancos de dados relacionais
Brevíssima introdução a bancos de dados relacionaisLeonardo Pacheco
 
Banco de dados
Banco de dadosBanco de dados
Banco de dadosM Serafim
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosdiogocbj
 
Apostila de Sql Server 2005
Apostila de Sql Server 2005Apostila de Sql Server 2005
Apostila de Sql Server 2005Andre Nascimento
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dadosFernando Palma
 
PostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfPostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfArleiEvaristo
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basicoAmadeo Santos
 
FLTK Summer Course - Part VII - Seventh Impact
FLTK Summer Course - Part VII  - Seventh ImpactFLTK Summer Course - Part VII  - Seventh Impact
FLTK Summer Course - Part VII - Seventh ImpactMichel Alves
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoRademaker Siena
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação finalRenan Levy
 

Similar to SGBD SQL Aula (20)

Banco dados i prof ivan (acesse www.portalgsti.com.br)
Banco dados i prof ivan (acesse  www.portalgsti.com.br)Banco dados i prof ivan (acesse  www.portalgsti.com.br)
Banco dados i prof ivan (acesse www.portalgsti.com.br)
 
gcc214-slides-1-introducao-conceitos-arquitetura.pdf
gcc214-slides-1-introducao-conceitos-arquitetura.pdfgcc214-slides-1-introducao-conceitos-arquitetura.pdf
gcc214-slides-1-introducao-conceitos-arquitetura.pdf
 
Xml pucminas2013
Xml pucminas2013Xml pucminas2013
Xml pucminas2013
 
Brevíssima introdução a bancos de dados relacionais
Brevíssima introdução a bancos de dados relacionaisBrevíssima introdução a bancos de dados relacionais
Brevíssima introdução a bancos de dados relacionais
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dados
 
Ara7129 unidade-1-v1
Ara7129 unidade-1-v1Ara7129 unidade-1-v1
Ara7129 unidade-1-v1
 
Apostila de Sql Server 2005
Apostila de Sql Server 2005Apostila de Sql Server 2005
Apostila de Sql Server 2005
 
Banco de dados aula 2
Banco de dados  aula 2Banco de dados  aula 2
Banco de dados aula 2
 
No sql o_que_e_isso.key
No sql o_que_e_isso.keyNo sql o_que_e_isso.key
No sql o_que_e_isso.key
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dados
 
Apostila de banco de dados da ucg
Apostila de banco de dados da ucgApostila de banco de dados da ucg
Apostila de banco de dados da ucg
 
Banco de Dados - Aula 02
Banco de Dados - Aula 02Banco de Dados - Aula 02
Banco de Dados - Aula 02
 
PostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfPostgreSQL-Prático.pdf
PostgreSQL-Prático.pdf
 
Sql - introdução
Sql -  introduçãoSql -  introdução
Sql - introdução
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basico
 
BD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BDBD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BD
 
FLTK Summer Course - Part VII - Seventh Impact
FLTK Summer Course - Part VII  - Seventh ImpactFLTK Summer Course - Part VII  - Seventh Impact
FLTK Summer Course - Part VII - Seventh Impact
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação final
 

More from Alex Camargo

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaAlex Camargo
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - DemonologiaAlex Camargo
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosAlex Camargo
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?Alex Camargo
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasAlex Camargo
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaAlex Camargo
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!Alex Camargo
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Alex Camargo
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoAlex Camargo
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlex Camargo
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeAlex Camargo
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoAlex Camargo
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)Alex Camargo
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Alex Camargo
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoAlex Camargo
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020Alex Camargo
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alexAlex Camargo
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial IntelligenceAlex Camargo
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finaisAlex Camargo
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Alex Camargo
 

More from Alex Camargo (20)

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - Eclesiologia
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - Demonologia
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeiros
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínas
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurança
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom Samaritano
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem pratica
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alex
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finais
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)
 

SGBD SQL Aula

  • 1. Banco de dados: teoria, organização e comandos de umBanco de dados: teoria, organização e comandos de um SGBD relacionalSGBD relacional Prof. Alex Camargo alexcamargoweb@gmail.com UNIVERSIDADE FEDERAL DO PAMPA CURSO DE ENGENHARIA DE COMPUTAÇÃO DISCIPLINA DE ENGENHARIA DE SOFTWARE AULA 01 DE 02 Maio/2018
  • 2. 2 I. Organização da aula Esta aula está organizada da seguinte maneira:  Conceitos gerais de SGBDs  Modelagem de dados relacional  Linguagem SQL  Exercícios   Referências Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 3. 3 II. Apresentação do professor Formação acadêmica:  Bacharel em Sistemas de Informação (URCAMP, 2011) TCC: Web sistema integrado a uma rede social para academias de ginástica. Orientador: Prof. Abner Guedes  Especialista em Sistemas Distribuídos com Ênfase em Banco de Dados (UNIPAMPA, 2013) TCC: Interligando bases de dados do sistema Controle de Marcas e Sinais utilizando o MySQL Cluster. Orientador: Prof. Érico Amaral Coorientador: Prof. Rafael Bastos (IDEAU) Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 4. 4 II. Apresentação do professor Formação acadêmica:  Mestre em Engenharia de Computação (FURG, 2017) Dissertação: EN-MUTATE: predição do impacto de mutações pontuais em proteínas utilizando Ensemble Learning. Orientadora: Profa. Karina Machado Coorientador: Prof. Adriano Werhli  Doutorando em Ciência da Computação (UFPEL) Tese: Em definição. Orientador: Aluno especial Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 5. 5 II. Apresentação do professor Principais projetos acadêmicos:  Bioinformática Estrutural de Proteínas: modelos, algoritmos e aplicações biotecnológicas. Universidade: FURG/UFMG/UFPB Área: Bioinformática  Algo+: um portal para o apoio ao ensino de Algoritmos. Universidade: UNIPAMPA Área: Informática na educação  Revisor do periódicos ICCEEg (ISSN 2236-0093) e CCEI (ISSN 2356-6635) Universidades: FURG/URCAMP Área: Multidisciplinar Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 6. 6 II. Apresentação do professor Principal atividade profissional:  Sócio-proprietário da APUS Digital. Projeto: Aplicativo Gás Connect Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 7. 7 II. Apresentação do professor Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 8. 8 II. Apresentação do professor Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 9. 9 II. Apresentação do professor Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 10. 10 III. Objetivos da aula Dentre os principais objetivos, podem ser elencados:  Apresentar a teoria concernente a SGBDs, tabelas e seus relacionamentos.  Executar instruções DDL (definição de dados) na linguagem SQL. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 11. 11 1. CONCEITOS GERAIS DE SGBDs Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 12. 12 1.1 Introdução Um Banco de Dados (BD, em inglês DB, database) são conjuntos de dados com uma estrutura regular que tem como objetivo organizar uma informação.  Normalmente agrupa informações utilizadas para um mesmo fim.  Podem ser organizados em diferentes arquiteturas.  Se tornou um dos principais componentes dos sistemas de informação. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 13. 13 1.2 O modelo relacional O modelo relacional é uma teoria matemática criada por Edgar Frank Codd em 1970 para descrever como as bases de dados deveriam funcionar. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Modelo Conceitual versus Modelo Relacional
  • 14. 14 1.2 O modelo relacional De acordo com o Princípio de Informação, toda informação tem de ser representada como dados; qualquer tipo de atributo representa relações entre conjuntos de dados.  A estrutura fundamental do modelo relacional são as tabelas.  Uma tabela é constituída por um ou mais atributos (colunas) que traduzem o tipo de dado a armazenar.  Cada instância (linha) é chamada de tupla (registro). Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 15. 15 1.2 O modelo relacional Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Exemplos de tabelas sob o modelo relacional.
  • 16. 16 1.3 SGBDs Um banco de dados informatizado é usualmente mantido e acessado por meio de um software conhecido como Sistema Gerenciador de Banco de Dados (SGBD).  SGBDs: programas que permitem ao usuário definir, construir e manipular bases de dados.  Muitas vezes o termo banco de dados é usado como sinônimo de SGDB (afirmativa errada).  Os SGBDs estão disponíveis em diferentes tipos: relacionais, orientados a objetos, objeto relacional, etc. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 17. 17 1.3 SGBDs Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Exemplos de SGBDs.
  • 18. 18 1.4 Arquiteturas tradicionais Alguns aspectos relevantes devem ser considerados para atingir eficiência e eficácia nos sistemas desenvolvidos, a fim de atender usuários nos mais variados domínios de aplicação.  Centralizados  Cliente-servidor  Paralelos  Distribuídos Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 19. 19 2. MODELAGEM DE DADOS RELACIONAL Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 20. 20 2.1 Introdução Para que seja possível implementar de forma correta um BD utilizando algum SGBD, é preciso realizar a modelagem dos dados basicamente em 3 etapas:  1. Entendimento do problema;  2. Construção do modelo ER (entidade e relacionamento); Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 21. 21 2.1 Introdução Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Diagrama ER (Cliente x Telefone).
  • 22. 22 2.1 Introdução Para que seja possível implementar de forma correta um BD utilizando algum SGBD, é preciso realizar a modelagem dos dados basicamente em 3 etapas:  1. Entendimento do problema;  2. Construção do modelo ER (entidade e relacionamento);  3. Implementação (SGBD). Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 23. 23 2.1 Introdução Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Diagrama Relacional.
  • 24. 24 2.2 Tipos de chaves No modelo relacional íntegro a única forma de relacionar dados que existem em uma tabela com dados que existem em outra tabela é através de atributos comuns.  Chave primária (Primary key - PK): uma coluna ou um grupo de colunas que assegura a unicidade das linhas dentro de uma tabela.  Chave estrangeira (Foreign key - FK): estabelece a restrição de integridade referencial entre duas tabelas. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 25. 25 2.2 Tipos de chaves Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Diagrama Relacional com destaque para chave primária (PK) e estrangeira (FK) PK FK
  • 26. 26 2.3 Tipos de dados Em SGBDs*, cada campo (coluna) de uma tabela deverá possuir um nome e um tipo de dado  CHAR(n): aceita qualquer valor. O texto tem comprimento fixo. Ex.: `Cpf` CHAR(14)  VARCHAR(n): aceita qualquer valor. O texto é de comprimento variável. Ex.: `Nome` VARCHAR(50)  TEXT: aceita qualquer valor. O texto é de comprimento variável em cada configuração de SGBD. Ex.: `Observacoes` TEXT  INT: aceita valores numéricos inteiros. Ex.: `QuantidadeFilhos` INT * principais tipos de dados do SGBD MySQL¹
  • 27. 27 2.3 Tipos de dados Em SGBDs*, cada campo (coluna) de uma tabela deverá possuir um nome e um tipo de dado.  FLOAT: número de ponto flutuante de precisão simples. Ex.: `Peso` FLOAT  DATE: armazena valores de data. Ex.: `DataNascimento` DATE  TIME: armazena valores de hora. Ex.: `Chegada` TIME * principais tipos de dados do SGBD MySQL¹
  • 28. 28 3. LINGUAGEM SQL Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 29. 29 3.1 Introdução Structured Query Language (SQL) é a linguagem padrão dos os bancos de dados relacionais. Seus comandos são divididos em:  DDL (Data Definition Language): destinada a criação do banco de dados, tabelas, além das relações existentes. Ex.: CREATE, ALTER e DROP.  DML (Data Manipulation Language): destinados a consultas, inserções, exclusões e alterações em um ou mais registros de uma ou mais tabelas. Ex.: SELECT, INSERT, UPDATE e DELETE.  DCL (Data Control Language): dispõe de comandos de controle. Ex.: GRANTE e REVOKE. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 30. 30 3.2 Comando CREATE DATABASE Utilizado para criar um novo banco de dados.  CREATE DATABASE Nome_do_Banco; Exibe os bancos de dados:  SHOW DATABASES; Seleciona um banco de dados:  USE Nome_do_Banco; Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 31. 31 3.2. Comando CREATE DATABASE Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando CREATE DATABASE.
  • 32. 32 3.3 Comando DROP DATABASE/SCHEMA Utilizado para excluir um banco de dados.  DROP SCHEMA Nome_do_Banco; Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 33. 33 3.3. Comando DROP DATABASE/SCHEMA Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando DROP DATABASE/SCHEMA.
  • 34. 34 3.4 Comando CREATE TABLE Utilizado para criar uma nova tabela.  CREATE TABLE Nome_da_Tabela ( Atributo1 Tipo, Atributo2 Tipo, AtributoN Tipo, PRIMARY KEY (Atributo1) ); Exibe as tabelas de um determinado banco de dados.  SHOW TABLES; Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 35. 35 3.4. Comando CREATE TABLE Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando CREATE TABLE.
  • 36. 36 3.5 Comando CREATE TABLE (com FK) Utilizado para criar uma nova tabela que contenha chaves estrangeiras.  CREATE TABLE Nome_da_Tabela ( Atributo1 Tipo, Atributo2 Tipo, AtributoN Tipo, PRIMARY KEY (Atributo1), CONSTRAINT Nome_da_Relação FOREIGN KEY (Atributo2) REFERENCES Nome_da_Tabela_Referenciada (Atributo_Ref) ); Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 37. 37 3.5. Comando CREATE TABLE (com chave estrangeira) Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando CREATE TABLE (com chave estrangeira).
  • 38. 38 3.6 Comando ALTER TABLE Utilizado para modificar (adicionar, alterar ou eliminar) colunas (ou parâmetros) da estrutura de uma tabela.  ALTER TABLE Nome_da_Tabela [ADD][CHANGE][DROP COLUMN]; Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 39. 39 3.6. Comando ALTER TABLE Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando ALTER TABLE.
  • 40. 40 3.7 Comando DROP TABLE Utilizado para excluir uma tabela.  DROP TABLE Nome_da_Tabela; Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 41. 41 3.7 Comando DROP TABLE Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Comando DROP TABLE.
  • 42. 42 4. EXERCÍCIOS Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 43. 43 4.1 Atividade 1 Utilize comandos SQL para as seguintes situações (baseado na figura e configuração de servidor dos slides subsequentes):  a) Criar um banco de dados;  b) Criar uma tabela;  c) Adicionar uma nova coluna chamada "Valor";  d) Alterar a coluna "Empresa" para "Parceiro";  e) Eliminar a coluna "Valor";  f) Eliminar a tabela criada;  g) Eliminar o banco de dados criado. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 44. 44 4.1. Atividade 1 Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo Figura. Exemplo de planilha de uma agência web.
  • 45. 45 4.1 Atividade 1 Passos para configurar o servidor remoto APUS Digital:  a) Abra a ferramenta MySQL Workbench;  b) Clicar no ícone “+” para adicionar uma nova conexão;  c) Dados de conexão:  Connection name: Unipampa  Hostname: apus.digital  Port: 3306  Username: bifljuup_[6 primeiros caracteres do nome]  Password: e-mail cadastrado na Universidade  d) Clicar em Test Connection;  e) Clicar em Ok;  f) Selecionar a conexão criada. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 46. 46 4.2 Atividade 2 (via Moodle) Implementar um banco de dados (relacional) para o "Atendimento acadêmico" docente/discente utilizando comandos SQL. A implementação deve apresentar 3 tabelas que atendam as seguintes necessidades: cadastro de aluno, cadastro de professor e agendamento. A implementação deve conter, obrigatoriamente, pelo menos:  a) 3 colunas (atributos) por tabela;  b) 1 Chave primária;  c) 1 Chave estrangeira;  d) 3 tipos de dados diferentes. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo
  • 47. 47 Referências DAMAS, Luís. SQL, Structured query language. Tradução Elvira Maria Antunes Uchôa. 6a Edição, Rio de Janeiro: LTC, 2007. MEIRA, Regilan. Banco de Dados (Apostila). Instituto Federal da Bahia - Campus Ilhéus, 2013. Banco de dados: teoria, organização e comandos de um SGBD relacional Prof. Alex Camargo