BANCO DE DADOS II SQL Básico. COTEMIG Gerson Borges

Documentos relacionados
A Linguagem SQL. Introdução a Banco de Dados DCC 011

A Linguagem SQL. Introdução a Banco de Dados DCC 011

GES013 Sistema de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br UFU/FACOM

Banco de Dados I Introdução SQL

GBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL. Ilmério Reis da Silva ilmerio@facom.ufu.br UFU/FACOM/BCC

SQL-99: Esquema de BD EMPRESA

SQL Básica. Andre Noel

SQL PostgreSQL. I Criação de Tabelas. Disciplina: SCC0241 Bases de Dados Professor: Eduardo Hruschka Estagiária PAE: Dayse de Almeida

GBC043 Sistemas de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva UFU/FACOM

Conceitos SQL SQL 19/03/2017 O que é dado? O que é BD? O que é uma informação? O que é SGBD? O que é SQL? O que é BD? O que é SGBD?

Banco de Dados. Professora: Luciana Faria

A linguagem SQL

Modelagem Conceitual parte I

Modelagem Conceitual parte I

BCD29008 Banco de dados

Aula 06 Sistemas Embarcados LT38C

Banco de Dados. Diego Silveira Costa Nascimento. 20 de março de Instituto Federal do Rio Grande do Norte

BCD29008 Banco de dados

GBC043 - Sistemas de Banco de Dados SQL DDL e Implementação no PostgreSQL

Banco de dados. Conteúdo: DDL Prof. Patrícia Lucas

A linguagem SQL

Aula de SQL Comandos DDL. André Luiz de Oliveira Eduardo Raul Hruschka

Disciplina: Banco de Dados Tema: SQL Parte 2

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação

Teste Exemplo Revisão da tentativa 1

Preparação. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 10/12/2013

Marcio Victorino

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL

Manipulação de Dados com SQL

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD.

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

modelo introduzido por E. F. Codd Meados da década de 70: protótipos. INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78)

Revisão e Exercícios. Relacionamento. Projeto de Bancos de Dados. Chave e Domínio. Tipos de Atributos

Revisão de Bancos de Dados

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

MySql. Introdução a MySQL. Andréa Garcia Trindade

SQL. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática

MODELO DE BANCO DE DADOS RELACIONAL

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

Processamento e Otimização de Consultas

O Modelo Relacional. Criando relações em SQL

O Modelo Relacional. Database Management Systems, R. Ramakrishnan (tradução, autorizada, de Anna & Mario Nascimento)

Preparação criar tabela. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 12/11/2018

Banco de Dados Modelo Relacional, Algebra Relacional, SQL

MATA60 BANCO DE DADOS Aula 5- Modelo Relacional. Prof. Daniela Barreiro Claro

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR

Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1. Prof. Leonardo Vasconcelos

Introdução ao PostgreSQL

Múltiplas Tabelas. Disciplina de Banco de Dados

Linguagem SQL (Parte II)

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

SQL: Definição de tabelas, Modificações à Base de Dados

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Views. uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. CREATE VIEW <nome> AS <query>;

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

DCC011 Revisão: Modelagem de Dados

PSI Linguagem de Definição de dados. Módulo 15

Aula 6 BD1 Modelo Relacional. Profa. Elaine Faria UFU

Esquema da Relação. Modelo Relacional. Instância da Relação. Exemplo. Uma base de dados é uma colecção de uma ou mais relações com nomes distintos

Programando em SQL. Triggers, Stored Procedures e funções. Profa. Késsia Marchi

SQL. Autor: Renata Viegas

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP

Modelo Entidade-Relacionamento (E-R)

Introdução à Banco de Dados

Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva.

Banco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011

INE 5423 Banco de Dados I

Transcrição:

BANCO DE DADOS II SQL Básico COTEMIG Gerson Borges gerson@cotemig.com.br

Definição de Banco de Dados [Elmasri & Navathe, 2000] Um banco de dados é uma coleção de dados relacionados Representando algum aspecto do mundo real Logicamente coerente Projetado para uma aplicação específica

SGBD Um sistema de gerência de banco de dados (SGBD) é um conjunto de programas que permite a criar e manter um banco de dados Um banco de dados juntamente com o SGBD que o gerência constitui um sistema de banco de dados

Característics de um SGBD Auto-descrição dos dados Isolamento entre programas e dados: abstração de dados Suporte a múltiplas visões dos dados Compartilhamento de dados e processamento de transações concorrentes

Vantagens de utilizar um SGBD Controle de redundância dos dados Controle de acesso (segurança) Armazenamento persistente dos dados Existência de múltiplas interfaces para os usuários Representação de relacionamentos complexos entre os dados Manutenção de restrições de integridade Recuperação de falhas

Modelagem Modelo conceitual: Conjunto de conceitos usados para descrever a estrutura de um banco de dados Abstração de dados Estrutura = tipos de dados + relacionamentos + restrições Modelo lógico: Descrição da estrutura de um banco de dados de acordo com um determinado modelo de dados Modelo físico: Conjunto de dados armazenados em um banco de dados em um determinado instante de tempo

Modelo ER Entidades: Objetos do mundo real que são de interesse para alguma aplicação Atributos: Propriedades utilizadas para descrever uma entidade

Modelo de dados relacional O modelo relacional representa um banco de dados como um conjunto de relações Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção de dados relacionados Cada linha de uma tabela representa um fato que tipicamente corresponde a uma entidade ou relacionamento do mundo real

Operações As operações sobre um BD relacional podem ser classificadas em: Operações de recuperação (select) Operações de atualização Operações de atualização: Inserção (insert) Remoção (delete) Modificação (update)

Definição de dados em SQL Comando CREATE SCHEMA CREATE SCHEMA COMPANY AUTHORIZATION JS; Comando CREATE TABLE CREATE TABLE <nome da tabela> (<definições de colunas> <definição da chave primária> <definições de chaves alternativas> <definições de chaves estrangeiras>);

CREATE TABLE Exemplo de um comando CREATE TABLE CREATE TABLE EMPLOYEE (FNAME VARCHAR(15) NOT NULL, MINIT CHAR, LNAME VARCHAR(15) NOT NULL, SSN CHAR(9) NOT NULL, SUPERSSN CHAR(9), DNO INT NOT NULL, PRIMARY KEY (SSN), FOREIGN KEY (SUPERSSN) REFERENCES EMPLOYEE (SSN) ON DELETE SET NULL, FOREIGN KEY (DNO) REFERENCES DEPARTMENT (DNUMBER));

SELECT Sintaxe: SELECT <lista de atributos> FROM <lista de tabelas> WHERE <condição>; Exemplo: SELECT BDATE, ADDRESS FROM EMPLOYEE WHERE FNAME= John AND MINIT= B AND LNAME= Smith ;

Atributos ambíguos (alias) SELECT DNAME, DLOCATION FROM DEPARTMENT, DEPT_LOCATIONS WHERE DEPARTMENT.DNUMBER = DEPT_LOCATIONS.DNUMBER; SELECT E.FNAME, E.LNAME, S.FNAME, S.LNAME FROM EMPLOYEE AS E, EMPLOYEE AS S WHERE E.SUPERSSN=S.SSN;

Atributos ambíguos (alias) SELECT DNAME, DLOCATION FROM DEPARTMENT, DEPT_LOCATIONS WHERE DEPARTMENT.DNUMBER = DEPT_LOCATIONS.DNUMBER; SELECT E.FNAME, E.LNAME, S.FNAME, S.LNAME FROM EMPLOYEE AS E, EMPLOYEE AS S WHERE E.SUPERSSN=S.SSN;

INSERT INSERT INTO EMPLOYEE VALUES ( Richard, K, Marini, 653258653, 1962-12-30, 98 Oak Forest, Katy, TX,37000, 987654321,4); INSERT INTO EMPLOYEE(FNAME, LNAME, SSN, DNO) VALUES ( Richard, Marini, 653258653,4); INSERT INTO EMPLOYEE(FNAME, LNAME, SSN, DNO) SELECT * FROM INPUT;

DELETE DELETE FROM EMPLOYEE WHERE LNAME= Brown ; DELETE FROM EMPLOYEE WHERE DNO IN (SELECT DNUMBER FROM DEPARTMENT WHERE DNAME= Research ); DELETE FROM EMPLOYEE;

UPDATE UPDATE PROJECT SET PLOCATION= Bellaire, DNUM=5 WHERE PNUMBER=10; UPDATE EMPLOYEE SET SALARY=SALARY*1.1 WHERE DNO IN (SELECT DNUMBER FROM DEPARTMENT WHERE DNAME= Research );

Agora é hora de praticar! Obrigado