Linguagem de Banco de Dados - SQL

Slides:



Advertisements
Apresentações semelhantes
BANCO DE DADOS I Prof. Ricardo Santos.
Advertisements

Ana Paula B. Barboza Ivana Xavier Rodrigues
Tópicos em Banco de Dados
O Comando DROP INDEX Para eliminar um índice definido sobre uma tabela, utilize: Drop Index on ; Ex: No Access: Drop Index X on.
Professor: Marcus Sampaio Monitor: Eduardo Santiago Moura
Banco de Dados Prof. Antonio.
Banco de Dados Prof. Antonio.
Banco de Dados I Aula 20.
Banco de Dados Aula 10 – SQL - DDL
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
SQL Renata Viegas.
SQL Structured Query Language
Normalização.
Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Funcionalidades de um SGBD
Prof.: Bruno Rafael de Oliveira Rodrigues
Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
Prof.: Bruno Rafael de Oliveira Rodrigues
MODELAGEM DE SISTEMAS DE INFORMAÇÃO
Modelo Relacional + SQL
Maurício Edgar Stivanello
SGBD.
Sistema Gerenciador de Banco de Dados SGBD
Sistema Gerenciador de Banco de Dados SGBD
Universidade Federal de Santa Catarina
Introdução à Engenharia da Computação
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Material III-Bimestre Wagner Santos C. de Jesus
Sistemas de Informação
SQL Structured Query Language
Linguagem de Banco de Dados - SQL
Bancos de Dados – SQL – parte 1
Banco de dados Profª Kelly Medeiros.
Administração de Sistemas de Informação Banco de Dados
SGBD.
SQL Server 2012 Introdução a Modelagem de Dados
Banco de Dados Aplicado ao Desenvolvimento de Software
Tipos de Linguagens do Banco de Dados
(Linguagem de Consulta Estruturada)
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Banco de Dados PostgreSQL.
Projeto de Banco de Dados
Desenvolvendo um script SQL
Introdução a Banco de dados
Banco de dados.
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson.com.br “Está conosco o Senhor dos Exércitos”
Linguagem de Definição de Dados
Contexto da disciplina
Banco de Dados Aplicado ao Desenvolvimento de Software
Cristina Paludo Santos URI – Campus de Santo Ângelo
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
SCC Bancos de Dados e Suas Aplicações
Contatos Gladimir Catarino
Banco de Dados I I Comandos SQL
Banco de dados 1 Modelagem de Dados Utilizando MER
SQL (Structured Query Language)
Professor Me. Jeferson Bussula Pinheiro.
UCSal – Bacharelado em Informática
Introdução a Bancos de Dados (BD’s)
Linguagem de definição de dados - SQL
Banco de Dados SQL (Structured Query Language) Hayslan Nicolas Colicheski Bucarth – IFRO / 2015 –
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Anomalias de Inserção, Remoção e Atualização
Prática de Banco de Dados Créditos: Prof. Jefferson Silva Adaptações: Prof. Nécio de Lima Veras.
Modelagem de Dados Aula 3.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Capítulo 4 SQL básica.
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Kelyn Schenatto. Definição Linguagem de Consulta Estruturada (Structured Query Language); Desenvolvida inicialmente nos anos 70 nos laboratórios da IBM.
Banco de Dados para Redes– Aula 03 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Linguagem de Banco de Dados - SQL Disciplina de Linguagem de Banco de dados – QI – Aula2 Prof. Luciano Monteiro

Modelo de Dados - níveis de abstração

Independente de tipo de SGBD Modelo conceitual Independente de tipo de SGBD Registra Estrutura dos dados podem aparecer no banco de dados Não registra Como estes dados estão armazenados a nível de SGBD

Modelo conceitual - diagrama ER Técnica mais difundida de modelagem conceitual Abordagem entidade-relacionamento (ER) Modelo conceitual é representado através de: diagrama entidade-relacionamento (DER)

Modelo conceitual - diagrama ER

Modelo lógico Nível de abstração visto pelo usuário do SGBD Dependente do tipo particular de SGBD que está sendo usado Ex.: PostgreSQL <> Oracle <> Interbase

Modelo lógico SGBD relacional para o exemplo

Modelo lógico para o exemplo TipoDeProduto(CodTipoProd, DescrTipoProd) Produto(CodProd, DescrProd, PrecoProd, CodTipoProd) CodTipoProd referencia TipoDeProduto

Modelo Físico Contém detalhes de armazenamento interno de informações Detalhes que não têm influencia sobre a programação de aplicações no SGBD influenciam a performance da aplicações Usados por profissionais que fazem sintonia de performance em banco de dados

Idéia fundamental do projeto de banco de dados Através da identificação das entidades que terão informações representadas no banco de dados, possível identificar os arquivos que comporão o banco de dados

Projeto de Banco de Dados Há múltiplas modelagens possíveis… qual escolher? Pessomóvel (Id, Nome, Chassis, Modelo, Ano…)

Problemas na Concepção Redundância (espaço de armazenamento) Proprietário de diversos automóveis ! Atualização inconsistente Alteração de nome em uma tupla… em todas ?! Anomalias de Atualização (inclusão) Pessoa que não tem automóvel; (exclusão) Perde informações da pessoa quando último carro é vendido!

Teoria da Normalização Formalismos para “boa” concepção de um esquema de BD relacional Sem informações redundantes Evita anomalias de atualizações Principais conceitos envolvidos Dependências funcionais (DFs) Formas normais Algoritmos de decomposição

Dependências Funcionais O que são “Dependências” ? Especificam propriedades sobre dados válidos no banco de dados Dependência de inclusão: “todo aluno é uma pessoa” Dependência funcional: “todo empregado trabalha no máximo em um departamento”

Dependências Funcionais Utilização: Verificação de restrições de integridade Otimização de consultas Concepção de esquemas: formas normais

Objetivo da Decomposição Particionar a tabela em esquemas relacionais menores de forma a eliminar, parcial ou totalmente, as redundâncias e anomalias de Atualização.

Normalização da Informação Conduz a um esquema da BD relacional capaz de suportar os dados relevantes a um dado universo. Ao normalizarmos a informação estamos a garantir: A não existência de redundâncias (cada dado deve ser armazenado uma única vez e numa única localização); Consistência da Informação - Qualquer operação de manipulação da informação (Inserção, Alteração, Destruição) deve afetar uma só ocorrência de um dado; Visão relacional dos dados. 1ª, 2ª e 3ª Formas Normais, Boyce-Codd Normal Form, 4ª e 5ª formas normais.

Formas Normais Primeira Forma Normal (1FN) Segunda Forma Normal (2FN) Uma relação R está em 1FN se todos os atributos são atômicos/indivisíveis Segunda Forma Normal (2FN) Uma relação R está em 2FN se estiver em 1FN e nenhum atributo não-primo depender funcionalmente de uma parte da chave

Formas Normais Terceira Forma Normal (3FN) Uma relação R está em 3FN se estiver em 2FN e todo atributo não primo depender apenas de um atributo primo;

Ponto de equilíbrio... Objetivos: flexibilidade vs. desempenho. Na maioria dos casos o processo de normalização pára na 3FN.

Tipos de dados do Banco de Dados VARCHAR CHAR SMALLINT INTEGER BIGINT FLOAT DOUBLE PRECISION TIMESTAMP TIME DATETIME DATE BLOB NUMERIC

Comandos SQL Comando Descrição SELECT Recupera dados do Banco de Dados INSERT UPDATE DELETE Insere novas linhas, altera linhas existentes e remove linhas de tabelas do banco de dados, respectivamente. Estes comandos são conhecidos como comandos DML (Data Manipulation Language). CREATE ALTER DROP RENAME TRUNCATE Cria, altera e remove objetos do banco de dados. São conhecidos como comandos DDL (Data Definition Language). COMMIT ROLLBACK SAVEPOINT Gerenciam as modificações realizadas pelos comandos DML. As modificações efetuadas pelos comandos DML podem ser agrupadas em transações lógicas. GRANT REVOKE Atribuem e removem direitos de acesso ao banco de dados e aos objetos a ele pertencentes. São conhecidos como comandos DCL (Data Control Language).

Instruções DDL - SQL (Data Definition Language) Comandos de definição de estrutura no SGBD.

Criação de Tabelas CREATE TABLE TABELA1 ( COLUNA1 TIPO NOT NULL, PRIMARY KEY (COLUNA1), FOREIGN KEY (COLUNA2) REFERENCES TABELA2 (COLUNA1), CHECK (COLUNA3 < COLUNA4));

Exclusão de Tabela DROP TABLE TABELA1;

Alteração de Tabela ALTER TABLE TABELA1 ADD CAMPO5 TIPO ADD CAMPO6 TIPO NOT NULL, DROP CAMPO3, ALTER CAMPO1 TO CAMPO2;

Criação de Índices CREATE INDEX NOMEINDICE ON TABELA (CAMPO1, CAMPO2,…);

Alteração de Índice ALTER INDEX NOMEINDICE INACTIVE; ALTER INDEX NOMEINDICE ACTIVE;

Exclusão de Índice DROP INDEX NOMEINDICE;