Memória de aula Semanas 15 e 16



Documentos relacionados
Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )

Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )

f. Vocês podem selecionar todos os campos indicando-os, ou seja, sem usar * (boa prática) g. Muito relevante na manutenção de BD e de aplicações.

Comandos de Manipulação

BDII SQL Junção Revisão 8

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

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

Bases de Dados 2005/2006. Aula 5

Structured Query Language (SQL)

1. SQL Instrumental Select Delete Update Insert Group by Having Unnion All...

Modelo Relacional - Manipulação

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1

Incluindo, atualizando e excluindo linhas nas tabelas

Memória de aula Aulas 11 e 12

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

Banco de Dados I. Aula 9 - Prof. Bruno Moreno 20/09/2011

Introdução ao SQL. Aécio Costa

Linguagem SQL Parte I

4.6. SQL - Structured Query Language

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Linguagem de Banco de Dados DML Exercícios

SQL DML. Frederico D. Bortoloti

SQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda.

SQL Consultas Básicas

Principais Instruções em SQL

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

select nome from Médicos where codm in (select codm from Consultas where data = 06/06/13 )

PHP INTEGRAÇÃO COM MYSQL PARTE 1

3) Palavra-chave distinct (select-from). Obter apenas os pibs distintos entre si.

Banco de dados 1. Linguagem DML SQL Select Avançado. Professor: Victor Hugo L. Lopes

Exemplo Clínica. Exemplo Clínica. Exemplo Clínica. Exemplo Clínica. (

SQL consulta com operadores

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

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

Banco de Dados I. SQL SELECT Parte 1 - Básico. Prof. Moser Fagundes. Curso TSI Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas

Junções e Índices em Tabelas

Tarefa Orientada 16 Vistas

Banco de Dados I. Linguagem de Consulta (parte II) Recuperando Dados de Várias Tabelas (JOINS)

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas

Definida pelo American National Standard Institute (ANSI) em 1986

Banco de Dados. Marcio de Carvalho Victorino Exercícios SQL

SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL

Treinamento sobre SQL

Uma expressão básica em SQL consiste em três cláusulas: select, from e where.

Prof.: Clayton Maciel Costa

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc.

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)

Álgebra Relacional. OBS: as operações Seleção e Projeção são operações unárias porque atuam em relações únicas.

Banco de Dados Oracle 10g: Introdução à Linguagem SQL

1.264 Aula 7. Introdução ao SQL

Principais Instruções em SQL. Contidas nesta apostila as principais instruções em SQL para a manutenção em Bancos de Dados.

Projeto de Banco de Dados

SQL (Structured Query Language)

Programação SQL. INTRODUÇÃO II parte

SQL (Structured Query Language)

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan

SQL (Structured Query Language)

Banco de Dados. Conversão para o Banco de Dados SisMoura

UNIVERSIDADE FEDERAL DO MARANHÃO - UFMA. Banco de Dados II. Integridade. Carlos Eduardo Portela Serra de Castro

Consultas SQL com mais de uma 01 tabela

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real.

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

MODELO DE DADOS VS ESQUEMA

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

1. Assinale as afirmações que são verdadeiras e as que são falsas, corrigindo-as:

Operação de União JOIN

Introdução à linguagem SQL

Tarefa Orientada 12 Junção Externa, Auto-Junção e União

Modelo de Dados Relacional Restrições de um Banco de Dados Relacional

Banco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello

Aplicações - SQL. Banco de Dados: Teoria e Prática. André Santanchè e Luiz Celso Gomes Jr Instituto de Computação UNICAMP Agosto de 2013

Tarefa Orientada 14 Subconsultas

CREATE TABLE AUTOR ( cod_autor int not null primary key, nome_autor varchar (60) )

PROGRAMA. Objectivos Gerais :

Gatilhos (Triggers) Prof. Márcio Bueno Elaborado por Maria Lígia B. Perkusich

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar

Tarefa Orientada 11 Junção Interna

SQL. Autor: Renata Viegas

FEAP - Faculdade de Estudos Avançados do Pará PROFª LENA VEIGA PROJETOS DE BANCO DE DADOS UNIDADE V- SQL

SQL (Structured Query Language)

Introdução ao SQL Avançado

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

Linguagem de Consulta Estruturada SQL- DML

Principais Comandos SQL Usados no MySql

MODELO RELACIONAL - UFMA

António Rocha Nuno Melo e Castro


Exercícios. Exercícios

Tarefa Orientada 15 Manipulação de dados

Curso PHP Aula 08. Bruno Falcão

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Transcrição:

FMU Curso: Ciência da Computação Disciplina: Banco de Dados I Professor: Ecivaldo Matos Memória de aula Semanas 15 e 16 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas utilize o comando INSERT INTO INSERT INTO tabela [ ( coluna [, coluna,...] ) ] VALUES ( valor [, valor,... ] ) Coluna: Lista de colunas que terão seus valores atribuídos (opcional) Valor: conteúdo que será incluído em cada coluna. Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo ) Obs.: colunas que não tiverem valores atribuídos terão conteúdo nulo. Caso queira explicitar a inclusão de um valor nulo numa determinada coluna use NULL no lugar correspondente ao valor desta coluna. 2) Incluindo várias linhas INSERT INTO tabela [ ( coluna [, coluna,...] ) ] SELECT comando-select Coluna: Lista de colunas que terão seus valores atribuídos (opcional) Comando-select: comando select que será visto na próxima aula. Exs.: INSERT INTO Estado SELECT * FROM Uf INSERT INTO tmpautor (CDAUTOR, NMAUTOR) SELECT CDAUTOR, NMAUTOR from AUTOR Página 1 de 6

3) Alteração de dados UPDATE tabela SET coluna = valor [, coluna = valor,...] [WHERE condição] Coluna: Lista de colunas que terão seus valores atribuídos (opcional) Valor: novo conteúdo para a coluna. Condição: condição que indicará o limite de atualização das linhas. Ex.: UPDATE CD SET PRECO_VENDA = 15 WHERE CODIGO_CD = 1; UPDATE CD SET PRECO_VENDA = PRECO_VENDA * 1,05 WHERE CODIGO_GRAVADORA = 2; 4) Exclusão de dados DELETE FROM tabela [WHERE condição] Condição: condição que indicará o limite de atualização das linhas. Ex.: DELETE FROM AUTOR WHERE CDAUTOR = 1 5) Cláusulas SELECT e FROM a. Apesar de ser a primeira, ela é a última instrução a ser executada!!! b. Antes de poder determinar o que incluir no conjunto-resultado final, é necessário conhecer todas as colunas que podem ser incluídas nele. c. Para isso, será necessário conhecer um pouco a cláusula FROM d. A cláusula FROM indica a(s) tabelas(s) que participarão do conjunto-resultado da consulta. e. Por exemplo: i. Mostre todas as colunas e todas as linhas da tabela cliente: SELECT * FROM cliente Página 2 de 6

f. Vocês podem selecionar todos os campos indicando-os, ou seja, sem usar * (boa prática) g. Muito relevante na manutenção de BD e de aplicações. SELECT codcliente,nome,cpf,datacadastro,cidade,uf,pais FROM cliente h. Além de selecionar todas as colunas, você pode indicar quais colunas (subconjunto): SELECT codcliente,nome,cpf FROM cliente 6) Cláusula DISTINCT a. Remove possíveis linhas duplicadas no resultado i. Exemplo: Select distinct nomecliente from cliente 7) Cláusula WHERE a. Mecanismo de filtragem de linhas indesejáveis de seu conjunto-resultado. Ex.: Select e.cod_emp, e.nome, e.sobrenome, e.dt_contr, e.cargo From empregado as e Where (e.cargo like analista% or e.cod_emp >= 41) and e.dt_contr > 04-23- 2010 Obs.: lembre-se que atributos do tipo datetime guardam data e hora, inclusive com segundos, como 04-23-2010 01:05:00. Quando não for especificado as horas, minutos e segundos, será considerado 00:00:00. Logo a expressão e.dt_contr > 04-23-2010 permite retornar todos registros desta data. Operadores de comparação: like: valores aproximados para alfanuméricos, geralmente utilizado em conjunto com %, que indica qualquer coisa. O coringa _ indica um caracter, [a-f] indica um caracter entre a e f quaisquer, e [^a-f] indica um caracter que não esteja entre a e f quaisquer. >, <, >=, <=, =, <> (diferente) 8) Junção a. Ideia similar à Junção da Álgebra Relacional Página 3 de 6

b. Produto Cartesiano preco as P, loja as L ou preco as P cross join loja as L i. Filtro ruim: preco as P, loja as L where P.codloja = L.codloja ii. Filtro correto: JOIN c. Junções internas i. Ex.: (junção interna é o join padrão) preco as P join loja as L ii. Explicitando que a junção é interna preco as P inner join loja as L d. Junções externas (outer join) i. Right outer join ii. Left outer join iii. Full outer join select nomeloja, codproduto, valor from preco as P left outer join loja as L select nomeloja, codproduto, valor Página 4 de 6

from preco as P full outer join loja as L Bibliografia ELMASRI, R., NAVATHE, S.B. Sistemas de Banco de Dados. 4ª Ed. São Paulo: Pearson Makron Books, 2005. Página 5 de 6

Exercícios Esquema Relacional Exemplo Ambulatórios(número, andar, capacidade) Médicos(CRM, RG, nome, idade, cidade, especialidade, número) Pacientes(RG, nome, idade, cidade, doença) Consultas(CRM, RG, data, hora) Funcionários(RG, nome, idade, cidade, salário) 1) buscar os dados de todos os médicos e, para aqueles que têm consultas marcadas, mostrar os dados de suas consultas 2) buscar os números de todos os ambulatórios e, para aqueles ambulatórios nos quais médicos dão atendimento, exibir o CRM e o nome dos médicos associados 3) mostrar em uma relação o RG e nome de todos os pacientes e de todos os médicos, apresentando estes dados de forma relacionada para aqueles que possuem consultas marcadas 4) a médica Maria (CRM = 37) transferiu todas as suas consultas do dia 29/04/10 para o dia 08/05/10 5) buscar o nome dos médicos que têm consultas marcadas 6) buscar o número e a capacidade dos ambulatórios do quinto andar e o nome dos médicos que atendem neles 7) buscar os nomes dos pacientes que são crianças (0-12 anos) e têm consulta marcada ou com médico João Santos ou com a médica Maria Souza 8) buscar o número e o andar dos ambulatórios onde nenhum médico dá atendimento 9) buscar o nome e o RG dos pacientes que residem na mesma cidade do paciente Pedro Campos (RG = 1110) 10) buscar o número dos ambulatórios com capacidade superior à capacidade do ambulatório de número 100 11) buscar o nome e o RG dos funcionários que recebem salários iguais ou inferiores ao salário da funcionária Ana (RG = 1001) 12) remover os ambulatórios onde nenhum médico dá atendimento Página 6 de 6