Вы находитесь на странице: 1из 30

Introdução à

Banco de Dados

Nathalia Sautchuk Patrício


Histórico

 Início da computação:
 dados guardados em arquivos de texto
 Problemas nesse modelo:
 redundância não-controlada de dados
 aplicações devem se preocupar com a forma

de armazenamento dos dados


 Início dos anos 60: primeiros bancos de dados
O que é um banco de dados?

 Bancos de dados são conjuntos de dados


integrados que tem por objetivo atender a uma
comunidade de usuários
 Redundância controlada
 Dados armazenados de forma mais
consistente
 Gerenciamento facilitado
O que é um SGBD?

 SGBD: Sistema Gerenciador de Banco de


Dados
 SGBD é um software que incorpora as funções
de definição, recuperação e alteração de dados
em um banco de dados
Exemplos de SGBD

 MySQL
 Oracle
 MS SQL Server
 PostgreSQL
 SQLite
Banco de Dados X SGBD

 Banco de Dados: um modelo, uma abstração


 SGBD: classe de softwares
Modelo de Dados

 Modelo de Dados: descrição formal da


estrututura de um banco de dados
 Exemplos:
 Modelos Navegacionais
 Modelo Orientado a Objetos
 Modelo Relacional (mais usado)
 Modelo de Entidades e Relacionamentos
(conceitual)
Projeto de Banco de Dados

 Modelagem Conceitual
 Modelo Lógico
 Modelo Físico
Projeto de Banco de Dados
Relacional
 Modelo Conceitual
 Modelo Entidade-Relacionamento
 Modelo Lógico
 Modelo Relacional
 Modelo Físico
 Tabelas
Modelo Conceitual

 Modelo Entidade-Relacionamento
 Entidade: conjunto de objetos da realidade
modelada sobre os quais deseja-se manter
informações no banco de dados
 Relacionamento: conjunto de associações entre
ocorrências de entidades
Modelo Conceitual
Modelo Lógico

 Modelo Relacional
 Primary Key: conjunto mínimo de um ou mais
atributos e relacionamentos cujos valores servem
para distinguir uma ocorrência da entidade das
demais ocorrência da entidade das demais
ocorrências da mesma entidade
 Foreign Key: conjunto de um ou mais atributos e
relacionamentos cujos valores aprecem
necessariamente em outra entidade como Primary
Key
Modelo Lógico

 Estudante (EstudanteID, UsuarioID, Nome,


Sobrenome, DataNascimento, Sexo, Serie,
Endereco, ...)
UsuarioID referencia Usuario
 Usuario (UsuarioID, Email, Senha, Nome,
Sobrenome, DataNascimento, Sexo, Tipo,
Sabendo)
Modelo Físico
SQL

 SQL: Structured Query Language (Linguagem


de Consulta Estruturada)
 SQL é uma linguagem de pesquisa declarativa
para banco de dados relacional
 É padronizado pela ANSI e ISO
 Possui variações e extensões produzidos pelos
diferentes fabricantes de SGBDs
Palavras-Chave em SQL

 DML - Linguagem de Manipulação de Dados


 DDL - Linguagem de Definição de Dados
 DCL - Linguagem de Controle de Dados
 DTL - Linguagem de Transação de Dados
 DQL - Linguagem de Consulta de Dados
 Cláusulas
 Operadores Lógicos
 Operadores Relacionais
 Funções de Agregação
DML - Linguagem de Manipulação
de Dados
 SELECT: usado para selecionar um conjunto
de registros de uma tabela existente
 SELECT Nome,Sobrenome FROM Estudante
WHERE Sexo=1;
 INSERT: usado para adicionar um novo
registro a uma tabela existente
 INSERT INTO `Eventos` VALUES (6, 'XII Ciência
Jovem de Pernambuco', '2008-10-29 00:00:00',
'2008-10-31 00:00:00', 'Olinda - PE', 'Sec. de
Ciência, Tec. e Meio Ambiente do Governo do
Estado', 'http://www.espacociencia.pe.gov.br', 4, 1);
DML - Linguagem de Manipulação
de Dados
 UPDATE: usado para alterar um registro
existente na tabela
 UPDATE Estudante SET Nome='Nathalia' WHERE
UsuarioID=15
 DELETE: usado para apagar um registro
existente na tabela
 DELETE FROM Estudante WHERE UsuarioID=15;
DDL - Linguagem de Definição de
Dados
 CREATE: cria um objeto (uma Tabela, por
exemplo) dentro da base de dados
 CREATE TABLE User (`UserID` int(11) NOT NULL
default '0', `Name` varchar(255) NOT NULL default
'', `LastName` varchar(255) NOT NULL default '',
`Sex` char(1) default NULL, `CPF` varchar(12) NOT
NULL default '', PRIMARY KEY (`UserID`));
 DROP: apaga um objeto do banco de dados
 DROP TABLE User;
 ALTER: alguns SGBDs usam esse comando, que
permite ao usuário alterar um objeto, como,adicionando
uma coluna a uma tabela existente.
DCL - Linguagem de Controle de
Dados
 GRANT: autoriza ao usuário executar ou setar
operações
 REVOKE: remove ou restringe a capacidade
de um usuário de executar operações
 ALTER PASSWORD
 CREATE SYNONYM
DTL - Linguagem de Transação
de Dados
 BEGIN WORK (ou START TRANSACTION):
usado para marcar o começo de uma
transação de banco de dados
 COMMIT: envia todos os dados das mudanças
permanentemente.
 ROLLBACK: faz com que as mudanças nos
dados existentes desde que o último COMMIT
ou ROLLBACK sejam descartadas
DQL - Linguagem de Consulta de
Dados
 Embora tenha apenas um comando, a DQL é a
parte da SQL mais utilizada
 O comando SELECT é composto de várias
cláusulas e opções, possibilitando elaborar
consultas das mais simples às mais elaboradas
 Possui:
 Cláusulas
 Operadores Lógicos
 Operadores Relacionais
 Funções de Agregação
Cláusulas

 Condições para definir os dados que se deseja


selecionar ou modificar em uma consulta
 FROM: especifica a tabela que se vai selecionar os registros
 WHERE: especifica as condições que devem reunir os
registros que serão selecionados
 GROUP BY: separa os registros selecionados em grupos
específicos
 HAVING: expressa a condição que deve satisfazer cada
grupo
 ORDER BY: ordena os registros selecionados com uma
ordem especifica
 DISTINCT: seleciona dados sem repetição
Operadores Lógicos

 AND (E lógico): avalia as condições e devolve um


valor verdadeiro caso ambos sejam corretos
 OR (OU lógico): avalia as condições e devolve um
valor verdadeiro se algum for correto
 NOT (Negação lógica): aevolve o valor contrário da
expressão
Operadores Relacionais

 < Menor que


 > Maior que
 <> Diferente de
 <= Menor ou Igual que
 >= Maior ou Igual que
 = Igual a
 BETWEEN: especifica um intervalo de valores
 LIKE: utilizado na comparação de um modelo e
para especificar registros de um banco de dados."
 Ex: Like" + extensão % vai significar buscar todos
resultados com o mesmo início da extensão
Funções de Agregação

 São usadas dentro de uma cláusula SELECT


para devolver um único valor que se aplica a
um grupo de registros
 AVG: calcula a media dos valores de um campo
determinado
 COUNT: devolve o número de registros da seleção
 SUM: devolve a soma de todos os valores de um
campo determinado
 MAX: devolve o valor mais alto de um campo
especificado
 MIN: devolve o valor mais baixo de um campo
especificado
Junção de Tabelas

 NATURAL JOIN
 SELECT Nome,Sobrenome,InstituicaoNome FROM
Estudante NATURAL JOIN Instituicao
 SELECT Nome,Sobrenome,InstituicaoNome FROM
Estudante INNER JOIN Instituicao ON
Instituicao.InstituicaoCNPJ =
Estudante.InstituicaoCNPJ
 INNER JOIN
 SELECT Nome,Sobrenome,InstituicaoNome FROM
Estudante INNER JOIN Instituicao ON
Instituicao.InstituicaoCNPJ =
Estudante.EscolaCNPJ
Junção de Tabelas

 OUTER JOIN
 LEFT JOIN
 RIGHT JOIN
Bibliografia

 HEUSER, Carlos Alberto. Projeto de Banco de


Dados. 5ª Edição. Editora Sagra Luzzatto.
 http://pt.wikipedia.org/wiki/Banco_de_dados
 Tutorial de SQL: http://www.criarweb.com/sql/

Вам также может понравиться