Buscar

Aula 09

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Seminário de Banco de Dados
Profª. Adriana Sicsú
OFICINA DE MODELAGEM DE DADOS E SQL
Conteúdo programático
Conceitos Banco de Dados
Sistemas Gerenciador de Banco de Dados
Modelagem de Dados
Linguagem SQL
Resolução de Questões
OFICINA DE MODELAGEM DE DADOS E SQL
Banco de Dados e Sistema Gerenciador de Banco de Dados
OFICINA DE MODELAGEM DE DADOS E SQL
*
O que é um banco de dados?
 Conjunto de dados que se relacionam. 
Propriedades:
coleção lógica e coerente de dados com um significado inerente; 
projetado, construído e populado com dados para um propósito específico; 
possui um conjunto pré definido de usuários e aplicações;
representa algum aspecto do mundo real - “mini-mundo” e qualquer alteração efetuada neste mini-mundo é automaticamente refletida no banco de dados.
OFICINA DE MODELAGEM DE DADOS E SQL
*
Sistema Gerenciador de Banco de Dados (SGBD)
 É uma coleção de programas que permite aos usuários criar e manter um banco de dados. O SGBD é, portanto um sistema de software de propósito geral que facilita os processos de definição, construção, manipulação e compartilhamento de banco de dados entre vários usuários e aplicações.
OFICINA DE MODELAGEM DE DADOS E SQL
Configuração de um Sistema de Banco de Dados Simplificado
OFICINA DE MODELAGEM DE DADOS E SQL
*
Características do Emprego de Banco de Dados
Natureza Autodescritiva do Sistema de Banco de Dados.
Isolamento entre os Programas e Dados e Abstração de Dados.
Suporte para as Múltiplas Visões dos Dados.
Compartilhamento de Dados e o Processamento de Transação Multiusuários.
OFICINA DE MODELAGEM DE DADOS E SQL
*
Vantagens da Utilização do SGBD
Controle de Redundância.
Restrição ao Acesso Não Autorizado.
Garantir o Armazenamento Persistente para Objetos Programas. 
Garantir o Armazenamento de Estruturas para o Processamento Eficiente de Consultas.
Garantir Backup e Restauração.
Fornecer Múltiplas Interfaces para os Usuários.
Representar Relacionamentos Complexos entre os Dados.
Fornecer as Restrições de Integridade.
Permitir Inferência e Ações Usando Regras.
OFICINA DE MODELAGEM DE DADOS E SQL
*
Arquitetura de Três-Esquemas
 Tem como objetivo principal separar o usuário da aplicação do banco de dados.
Níveis:
Nível Interno: descreve a estrutura de armazenamento físico do banco de dados
Nível Conceitual: descreve a estrutura de todo o banco de dados para a comunidade de usuários.
Nível Externo: abrange os esquemas externos ou visões do usuário. 
OFICINA DE MODELAGEM DE DADOS E SQL
*
Arquitetura de Três-Esquemas
OFICINA DE MODELAGEM DE DADOS E SQL
*
Independência de Dados
 Capacidade de modificar a definição dos esquemas em determinado nível, sem afetar o esquema do nível superior.
Independência física de dados: modifica o esquema físico sem que com isso, qualquer programa aplicativo precise ser reescrito (ocasionais para aumento de desempenho).
Independência lógica de dados: modifica o esquema lógico sem que, com isso, qualquer programa aplicativo precise ser reescrito (sempre que uma estrutura lógica do BD é alterada - é mais difícil de ser obtida).
OFICINA DE MODELAGEM DE DADOS E SQL
MODELAGEM DE DADOS
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto de Banco de Dados
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Entidade
“Algo” do mundo real, com uma existência independente. Uma entidade pode ser um objeto com uma existência física ou um objeto com existência conceitual . Exemplo: Cliente, Cursos, ...
Entidade Fraca
 Depende de outra entidade para existir.
	
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Atributos
 Propriedades particulares que descrevem uma entidade.
Classificação
Simples / composto
Monovalorado / Multivalorado
Obrigatório / Não obrigatório
Único / Não único
Identificador
Derivado
OFICINA DE MODELAGEM DE DADOS E SQL
Atributos
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Relacionamentos
	As entidades são conectadas umas às outras através de relacionamentos.
	Exemplo: Funcionários sã alocados em Departamento
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Grau de Relacionamento - Unário
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Grau de Relacionamento - Binário
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Grau de Relacionamento - Ternário
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Cardinalidade de Relacionamento 
1:1
1:N
N:N
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Agregação 
 É uma abstração através da qual relacionamentos são tratados como entidades de nível superior.
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
Generalização
 Uma generalização é uma entidade que se subdivide em especializações. Os atributos e relacionamentos de uma generalização são herdados por suas especializações.
 Uma especialização tem que ter seus próprios atributos e/ou seus próprios relacionamentos.
OFICINA DE MODELAGEM DE DADOS E SQL
Projeto Conceitual 
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Relação = Tabela
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Atributo = Coluna
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Valores dos Atributos = Domínio
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Conjunto de Atributo = Esquema
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Tupla = Linha
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Conjunto de Tuplas = Instância
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Campo = Encontro de Linha e Coluna
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Conteúdo do Campo = Valor
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Campos sem Conteúdo = Nulo
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria 
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria = Atributo Único 
Integridade de Chave Primária
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria = Atributo Único 
Integridade de Chave Primária
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria = Atributo Obrigatório
Integridade de Entidade
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria = Atributo Obrigatório
Integridade de Entidade
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria Simples
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Primaria Composta
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Candidata
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Estrangeira
OFICINA DE MODELAGEM DE DADOS E SQL
Componente do Modelo Relacional
Chave Estrangeira -> Integridade Referencial
Chave Estrangeira
OFICINA DE MODELAGEM DE DADOS E SQL
Regras de Integridade
Integridade da Entidade
O valor da chave não pode ser vazio.
Integridade de Chave Primaria
O chave primária tem que ser única
OFICINA DE MODELAGEM DE DADOS E SQL
Regras de Integridade
Integridade Referencial
As chaves estrangeiras tem que ser respeitadas, ou seja, se existe um determinado valor para o atributo na tabela onde ele é chave estrangeira este valor deve existir na tabela onde ele é chave primária .
Restrições de Integridades Semânticas
Todas as demais regras que devem ser obedecidas por todos os estados válidos da base de dados
OFICINA DE MODELAGEM
DE DADOS E SQL
Todo jogador deve pertencer a um único clube.
Assinale a opção que representa corretamente, no modelo
entidade-relacionamento, a especificação apresentada acima.
Questão 1 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
Questão 1 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
	 Considere a seguinte representação de
abstração de generalização/especialização, com
propriedade de cobertura parcial e sobreposta,
segundo notação do diagrama entidade relacionamento
estendido.
Questão 2 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
	 Qual opção apresenta um esquema de banco de dados relacional que representa corretamente a referida abstração?
Questão 2 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
LINGUAGEM SQL 
OFICINA DE MODELAGEM DE DADOS E SQL
Linguagem SQL
 SQL quer dizer Structured Query Language e é o padrão mundial de acesso às bases de dados relacionais.
A Linguagem SQL é dividida nas seguintes partes:
DDL - Create, Alter, Drop, Rename, Truncate: Permitem a criação e definição de objetos como tabelas, views e outros objetos no banco de dados.
DRL -Select: É o comando mais comum do SQL. Utilizado amplamente para recuperação dos dados de uma base. 
OFICINA DE MODELAGEM DE DADOS E SQL
Linguagem SQL
DML - Insert, Delete, Update: Comandos de manipulação dos dados. Usados nas aplicações que mantém a base de informações com inserções, atualizações e deleções de dados.
DCL - Grant, Revoke: São utilizados para atribuir ou remover direitos de acesso a objetos do banco de dados e suas estruturas.
OFICINA DE MODELAGEM DE DADOS E SQL
Create Table 
CREATE TABLE nome_da_tabela
 (nome_col1 tipo_col1 [restri_col1] [,
 nome_col2 tipo_col2 [ restri_col2 ] [,
 nome_col3 tipo_col3 [restri_col3] 
 ]]... [, restri_tab1 [,restri_tab2] );
OFICINA DE MODELAGEM DE DADOS E SQL
Create Table 
OFICINA DE MODELAGEM DE DADOS E SQL
Create Table 
create table carro
(
placa 	int 	not null,
nome 	varchar(30) 	not null 	default “Topic”,
constraint restrição1
primary key(placa)
);
OFICINA DE MODELAGEM DE DADOS E SQL
Alter Table
 É utilizado para alterar a estrutura de uma tabela no banco de dados. 
Para adicionar uma nova coluna a uma tabela
ALTER TABLE tabela_base
ADD [COLUMN] atributo tipo_dado
Para modificar uma coluna de uma tabela
ALTER TABLE tabela_base		
	ALTER [COLUMN] atributo 
		SET valor-default
		ou DROP DEFAULT
OFICINA DE MODELAGEM DE DADOS E SQL
Alter Table
Para remover uma coluna de uma tabela:
ALTER TABLE tabela_base
DROP [COLUMN] atributo
Para adicionar uma restrição a uma tabela
ALTER TABLE tabela_base
ADD CONSTRAINT nome-contraint 
OFICINA DE MODELAGEM DE DADOS E SQL
Alter Table
Para remover uma restrição de um tabela
ALTER TABLE tabela_base
DROP CONSTRAINT nome-contraint
OFICINA DE MODELAGEM DE DADOS E SQL
Drop Table
	Remove a tabela do banco de dados. Remove tanto os dados quanto a definição da tabela.
DROP TABLE <nomeTabela>
 
Exemplos:
	•Drop Table Empregados;
TRUNCATE:
	O comando TRUNCATE apaga os dados da tabela.
 
Exemplo:
	• Truncate Table Empregados;
OFICINA DE MODELAGEM DE DADOS E SQL
Insert
	Insere linhas em uma tabela.
insert into <nome_tabela> (coluna1, coluna2, ..., colunan) values (valor1, valor2, ..., valorn);
Exemplos: 
Insert into motorsita (cnh,nome) values (9477, “Joana Nascimento”);
OFICINA DE MODELAGEM DE DADOS E SQL
Update
	É utilizado para alterar os dados de uma tabela do banco utilizado.
 
	Update tabela Set <atribuições> Where <Condição>;
Exemplos:
	Update Empregados
	Set Funcao = ‘Consultor’
	Where Funcao = ‘Trainee’;
OFICINA DE MODELAGEM DE DADOS E SQL
Delete
	É utilizado para apagar dados de uma tabela do banco utilizado.
 
	Delete From tabela Where <Condição>;
 
Exemplos:
	Delete From Empregados
	Where Funcao = ‘Trainee’; 	
OFICINA DE MODELAGEM DE DADOS E SQL
Select
	SELECT <lista de atributos e funções>
	FROM <lista de tabelas>	
	WHERE <condições>
	GROUP BY <atributos de agrupamento>
	HAVING <condição de agrupamento>
	ORDER BY <lista de atributos>
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Operadores:
Operações de comparação (=,>,<)
Faixas (BETWEEN e NOT BETWEEN)
Correspondência de caracteres (LIKE e Not LIKE)
Valores desconhecidos (IS NULL e IS NOT NULL)
Listas (IN e NOT IN)
Combinações dos acima (AND, OR)
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Operadores de Comparação:
Operações de comparação (=,>,<)
= igual a 
> maior que
< menor que
>= maior que ou igual a
<= menor que ou igual a
!= diferente
<> diferente
!> não maior que
!< não menor que
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Select aluno.nome, aluno.bairro From aluno;
Select distinct aluno.bairro as bairros From aluno;
Select * From Empregados 
 Where salario > 1000;
Select * From Empregados 
 Where salario Between 1000 and 1500;
Select * From Empregados 
 Where nome like ‘E%’;
Select aluno.nome, aluno.bairro From aluno
 where aluno.nome like “G%”;
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Select aluno.nome, aluno.bairro From aluno
 where aluno.nome like “[M-P] %”;
Select * From Empregados 
 where salario in (700,800,900);
Select aluno.cod, aluno.nome, aluno.bairro From aluno
 where aluno.cod < ‘5’ and aluno.nome = “Paula”;
Select aluno.nome as “Nome do Aluno” From aluno
 
Select nome, sal*1.1 From funcionário;
Select cod, nome From produtos order by (saldo) desc;
 where aluno.nome like “G%”;
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Funções de agregação
	Essas funções tem a finalidade de agregar os dados a serem retornados numa consulta.
 
• Funções de agregação, com exceção do count(*), ignoram valores nulos;
• sum e avg só funcionam com valores numéricos;
• Apenas uma linha é retornada (se uma sentença group by não tiver sido usada);
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Funções de Agregação
• Não podem ser utilizadas num comando where;
• Podem ser aplicados a todas as linhas em uma tabela ou num grupo de uma tabela.
Sintaxe simplificada:
select nome_da_função_agregada ([distinct] expressão)
from nome_da_tabela
[where ...condições];
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Exemplos:
Select count(*) From Empregados;
select max(preco) from produtos;
select min(preco) from produtos;
select sum(horas) from empregados where dep = “inf”;
select avg (preço) from produtos where cat = “2”
Select avg (distinct preco) From produto;
OFICINA DE MODELAGEM DE DADOS E SQL
Select
Distinct
	
 
• Opcional com sum, avg e count;
• Não permitida com min, max e count (*);
• Permitida com count (nome_da_coluna);
• Usado apenas com nomes de colunas, não com expressões aritméticas.
 
Exemplos:
	select avg (distinct preco) From produto;
OFICINA DE MODELAGEM DE DADOS E SQL
Select / Group by
• Divide os dados em grupos;
• Normalmente utilizada com uma função de agregação na lista_de_seleção;
• Todos os valores nulos na coluna group by são tratados como um grupo;
Exemplo:
Select tipo, avg(preco) From produtos; ( sem group by )
Select tipo, avg(preco) From produtos group by tipo ( com group by )
	
OFICINA DE MODELAGEM DE DADOS E SQL
Select / Group by /Having
• A sentença HAVING estabelece condições para a sentença group by;
Sintaxe simplificada:
select [distinct] lista_de_seleção from nome_da_tabela group by expressão having condições;
Exemplo: Valor da soma dos preços dos produtos quando ultrapassar R$20.000,00
Select tipo, sum(preco) From produtos
Group by tipo
having sum (preco) > 20000.0;
	
OFICINA DE MODELAGEM DE DADOS E SQL
Junção
• Junção Cruzada (Produto Cartesiano)
	Gera um resultado formado por todas as combinações possíveis de uma linha da primeira tabela com uma linha da segunda. Não existe uma condição de junção. 
Exemplo
select *
from empregado , departamento;
	
OFICINA DE MODELAGEM DE DADOS E SQL
Junção Interior
	Esse tipo de junção conecta as duas tabelas e retorna apenas as linhas que satisfazem a condição de junção. 
Na sintaxe ANSI, junções interiores são indicadas com INNER JOIN: 
select <colunas>
from tabela1 INNER JOIN tabela2 ON <condição de junção>; 
Na sintaxe Tradicional: 
select <colunas>
from tabela1 ,tabela2 
Where <condição de junção>; 
OFICINA DE MODELAGEM DE DADOS E SQL
Junção
Exemplo: 	
Select Empregados.nome, Empregados.funcao
From (Empregados Inner Join departamento On
	Empregados.coddepart = departamento.cod)
 
Where departamento.nome = ‘Consultoria’;
Equivalente a:
	Select Empregados.nome, Empregados.funcao
From Empregados, departamento
		
Where Empregados.coddepart = departamento.cod
 And departamento.nome = ‘Consultoria’;
 
OFICINA DE MODELAGEM DE DADOS E SQL
SubConsultas
• Uma subconsulta é uma declaração select, usada como uma expressão, como parte de outra declaração select, update, insert ou delete.
• A subconsulta (select aninhado) é resolvida e depois os resultados são substituídos na consulta mais externa.
• Se a declaração where da consulta mais externa incluir o nome de uma coluna, esta deverá ser compatível para a junção (join), com a coluna nomeada na lista_de seleção da subconsulta (ou seja: mesmo domínio).
OFICINA DE MODELAGEM DE DADOS E SQL
SubConsultas
• Não utilize a cláusula order by numa subconsulta.
• Sempre que utilizar operadores de uma única linha a subconsulta deve ser também de uma única linha.	
OFICINA DE MODELAGEM DE DADOS E SQL
SubConsultas
Exemplos:
1) O nome do motorista que passa na escola “XX”
select motorista.nome from motorista
where motorista.cnh in (select rota.cnh from rota, escola
 where escola.nome =“XX" and rota.cod=escola.rota);
 
2) O nome dos motoristas que não possuem rota
select motorista.nome from motorista
where motorista.cnh not in (select rota.cnh from rota, escola
where rota.cod=escola.rota);
 
OFICINA DE MODELAGEM DE DADOS E SQL
SubConsultas
Exemplos:
3) Escolas que possuem a soma de todas as idades menor que o aluno que possui maior idade.
select escola, sum(idade) from aluno
group by escola
having sum(idade) < (select max(idade) from aluno);
 
4) É possível utilizar subconsultas dentro do FROM.
select a.nome
from (select * from aluno) ;
OFICINA DE MODELAGEM DE DADOS E SQL
	Em um modelo de dados que descreve a publicação
acadêmica de pesquisadores de diferentes instituições
em eventos acadêmicos, considere as tabelas abaixo.
DEPARTAMENTO (#CodDepartamento, NomeDepartamento)
EMPREGADO (#CodEmpregado, NomeEmpregado, CodDepartamento, Salario)
	Na linguagem SQL, o comando mais simples para
recuperar os códigos dos departamentos cuja média
salarial seja maior que 2000 é
Questão 3 – ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
	
Questão 3 – ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
	
Questão 3 – ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
	 Considere o esquema de banco de dados relacional
apresentado a seguir, formado por 4 relações, que
representa o conjunto de estudantes de uma universidade
que podem, ou não, morar em repúblicas (moradias
compartilhadas por estudantes). A relação Estudante foi
modelada como um subconjunto da relação Pessoa.
Considere que os atributos grifados correspondam à
chave primária da respectiva relação e os atributos que
são seguidos da palavra referencia sejam chaves
estrangeiras.
Questão 4 –ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
Pessoa(IdPessoa:integer, Nome:varchar(40),
Endereco:varchar(40))
FonePessoa(IdPessoa:integer referencia Pessoa,
DDD:varchar(3), Prefixo:char(4), Nro:char(4))
Republica(IdRep:integer, Nome:varchar(30),
Endereco:varchar(40))
Estudante(RA:integer, Email:varchar(30),
IdPessoa:integer referencia Pessoa,
IdRep:integer referencia Republica)
Questão 4 –ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
Suponha que existam as seguintes tuplas no banco de
dados:
		Pessoa(1, ‘José Silva’, ‘Rua 1, 20’);
		Republica(20, ‘Várzea’, ‘Rua Chaves, 2001’)
Qual opção apresenta apenas tuplas válidas para esse
esquema de banco de dados relacional?
Questão 4 –ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
Questão 4 –ENADE (2011)
OFICINA DE MODELAGEM DE DADOS E SQL
Considere as seguintes tabelas:
	
CREATE TABLE Departamento
(
IdDep int NOT NULL,
NomeDep varchar(15),
CONSTRAINT Departamentopkey PRIMARY KEY (IdDep)
);
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
	CREATE TABLE Empregado
(
IdEmpregado int NOT NULL,
IdDep int,
salario float,
CONSTRAINT Empregadopkey PRIMARY KEY (IdEmpregado),
CONSTRAINT EmpregadoIdDepfkey FOREIGN KEY (IdDep)
REFERENCES Departamento(IdDep)
ON UPDATE RESTRICT ON DELETE RESTRICT
)
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
Considere as seguintes consultas SQL.
I – 
SELECT NomeDep, count(*)
FROM Departamento D, Empregado E
WHERE D.IdDep=E.IdDep and E.salario > 10000
GROUP BY NomeDep
HAVING count(*) > 5;
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
II 
SELECT NomeDep, count(*)
FROM Departamento D, Empregado E
WHERE D.IdDep=E.IdDep and E.salario >10000 and
E.IdDep IN (SELECT IdDep
FROM Empregado
GROUP BY IdDep
HAVING count(*) > 5)
GROUP BY NomeDep;
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
	 Quando as consultas acima são realizadas, o que é recuperado em cada uma delas?
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
	
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
	
Questão 5 – ENADE (2008)
OFICINA DE MODELAGEM DE DADOS E SQL
Considere o seguinte script SQL de criação de um banco de dados.
 
CREATE TABLE PECAS (CODIGO NUMERIC(5) NOT NULL,
DESCRICAO VARCHAR(20) NOT NULL,
ESTOQUE NUMERIC(5) NOT NULL,
PRIMARY KEY(CODIGO));
 
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
CREATE TABLE FORNECEDORES
(COD_FORN NUMERIC(3) NOT NULL,
NOME VARCHAR(30) NOT NULL,
PRIMARY KEY(COD_FORN));
 
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
CREATE TABLE FORNECIMENTOS
(COD_PECA NUMERIC(5) NOT NULL,
COD_FORN NUMERIC(3) NOT NULL,
QUANTIDADE NUMERIC(4) NOT NULL,
PRIMARY KEY(COD_PECA, COD_FORN),
FOREIGN KEY (COD_PECA) REFERENCES PECAS,
FOREIGN KEY (COD_FORN) REFERENCES
FORNECEDORES);
 
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
		A partir desse script, assinale a opção que apresenta comando SQL que permite obter uma lista que contenha o nome de cada fornecedor que tenha fornecido alguma peça, o código da peça fornecida, a descrição dessa peça e a quantidade fornecida da referida peça.
 
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
		
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
		
Questão 6 – ENADE (2005)
OFICINA DE MODELAGEM DE DADOS E SQL
Referência Bibliográfica
Livro de Sistemas de Banco de Dados – Navathe 4ª Edição
Material de aula – Prof. Ventury (Estácio de Sá)
 
*
*
*
*
*
*
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*
Relação: representada por uma tabela de duas dimensões (linhas e colunas);
Tupla: corresponde a uma linha da relação;
Atributo: corresponde às colunas da relação;
Chave primária: conjunto de atributos que identificam univocamente cada tupla da
relação;
Chave extrangeira: atributo de uma relação que é chave primária de outra relação.
*

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais