Buscar

IBD Plan

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aula 1
SISTEMAS TRADICIONAIS SISTEMAS DE BANCOS DE DADOS
Nos Sistemas Tradicionais os dados são armazenados 
em arquivos que estão fisicamente armazenados, 
separados uns dos outros O acesso é feito pelos 
programas de aplicação, utilizando o nome externo 
dos arquivos e definindo todo o registro, 
independente da utilização dos campos
Nos Sistemas de Banco de Dados os dados são definidos 
para o Sistema Gerenciador de Banco de Dados (SGBD), 
através da DDL (linguagem de definição de dados) 
Fisicamente estão armazenados em um único local, e o 
acesso só se realiza através do SGBD Nos programas de 
aplicação, é necessário apenas definir os campos a serem 
utilizados pelo programa
O desenvolvimento de Sistemas informatizados de uso comercial ao longo do tempo:
Houve evolução dos sistemas tradicionais para os 
sistemas de bancos de dados
REDUNDÂNCIA DE DADOS
Trata-se da duplicação dos mesmos dados em dois ou mais arquivos O problema com a redundância é que as mudanças ao serem feitas no arquivo de uma 
aplicação não são automaticamente realizadas nos arquivos das outras aplicações, gerando a falta de integridade dos dados
Com o passar do tempo, essas aplicações e arquivos independentes podem proliferar a ponto de os recursos de informações da empresa ficarem fora de controle 
Isso muitas vezes resulta em:
DEPENDÊNCIA ENTRE PROGRAMAS E DADOS
Os aplicativos tradicionais de banco de dados de arquivos são caracterizados pela dependência entre programas e dados, isto é, programas e dados desenvolvidos 
e organizados para uma aplicação são incompatíveis com os programas e dados organizados diferentemente para um outro aplicativo
CUSTO EXCESSIVO EM SOFTWARE
Resultam da criação, documentação e acompanhamento de muitos arquivos e aplicações diferentes
AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS
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
Benefícios de uso de um SBD
* Implementação do Conceito de transação
* Controle de Concorrência 
* Mecanismo de acesso aos dados
* Mecanismo de recuperação (Tolerância a falhas)
* Maior Segurança
SISTEMAS TRADICIONAIS
A abordagem de bancos de dados ao gerenciamento de dados surgiu devido a problemas associados com a abordagem tradicional do gerenciamento de dados 
como: redundância, dificuldades de acesso, integridade e problemas de segurança 
Um banco de dados é uma coleção de dados organizados de tal forma que possam ser acessados e utilizados por muitas aplicações diferentes Ou seja, em vez de 
armazenar dados em arquivos separados para utilização, os dados são armazenados e organizados em um só local permitindo compartilhamento e inter-
relacionamento por múltiplos usuários 
A fim de usar a abordagem de banco de dados para o gerenciamento de dados, foi necessário um software adicional – um sistema de gerenciamento de banco de 
dados (SGBD) O SGBD consiste em um grupo de programas que pode ser usado como uma interface entre o banco de dados e um usuário ou um banco de dados e 
um programa aplicativo
MODELO RELACIONAL
3 - Conceituar Relação
4 - Identificar os componentes do modelo relacional
5 - Conceituar integridade referencial
Nossas vidas são gerenciadas por enormes bases de dados
Quando vamos, por exemplo, realizarmos um saque no caixa eletrônico de um banco, o sistema do equipamento tem que acessar as informações de agencia, numero da 
conta, senha e saldo disponível 
Estas informações, na realidade dados, necessitam de gerenciamento eficiente e confiável que permita sua rápida recuperação e atualização
É exatamente este o grande objetivo dos Sistemas de Banco de dados
Desenvolvimento de sistemas informatizados
2 - Definir modelo de dados
Objetivos da aula 1
1 - Conhecer as principais características de um Sistema de Banco de Dados
Conjunto de Tuplas = Instância
Campo = Encontro de Linha e Coluna Administrativo => Valor do Campo Nome na terceira Tupla
SAIBA MAIS
Oracle
SqlServer
Postgresql
MySql
FK é quando o ATRIBUTO de uma relação é PK (chave primária) em outra relação
É o ELO LÓGICO entre duas tabelas
Implementado fisicamente nos RELACIONAMENTOS da Modelagem Conceitual
Garante INTEGRIDADE REFERENCIAL do BD
Relação = Tabela
Atributo = Coluna
Valores dos Atributos = Domínio
Conjunto de Atributo = Esquema
RELAÇÃO
ATRIBUTO
TUPLA
CAMPO
CHAVE ESTRANGEIRA
As tuplas de uma relação constituem as LINHAS da tabela
O CONJUNTO DE TUPLAS de uma tabela constituem a sua INSTÂNCIA
Tupla = Linha
Ordem das tuplas na relação não é relevante para diferenciar as relações
Os valores dos atributos devem ser atômicos, não sendo divisíveis em componentes
Os atributos de uma relação constinuem as COLUNAS da tabela
TODO ATRIBUTO POSSUI UM DOMÍNIO
O CONJUNTO DE ATRIBUTOS de uma tabela constituem seu ESQUEMA
TODO CAMPO POSSUI UM VALOR
Não há tuplas duplicadas em uma relação
Baixo nível ou modelos de 
dados FÍSICO
Fornece uma visão mais detalhada do modo como os dados estão realmente armazenados no computador O modelo relacional, 
o modelo de rede e o hierárquico e o orientado a objetos são exemplos deste tipo de representação
O Esquema de um Banco de Dados é a especificação da estrutura do Banco de Dados
De um modo geral se utiliza o termo esquema apenas para os modelos referentes ao aspecto estrutural do mundo real
Instância é o conjunto de ocorrências dos objetos de dados de um esquema em um dado momento do tempo
 (Estado do BD num momento do tempo)
Estrutura Geral de um Sistema de Banco de Dados
MODELOS DE DADOS
O SGBD é responsável por garantir que toda instância do banco de dados satisfaça ao esquema do banco de dados, respeitando sua estrutura e suas restrições
Arquitetura 3 Esquemas
Visando facilitar o desenvolvimento de sistemas e realçar as vantagens da utilização de Sistemas de Banco de Dados foi criada a Arquitetura Três 
Esquemas, cuja principal meta é separar as aplicações do usuário do banco de dados físico
Os esquemas podem ser definidos como:
MODELO RELACIONAL
Foi proposto por Edgar Codd em 1970
Modelo Dominante nos SGBD Comerciais
Possui uma extensão denominada Objeto Relacional
Representa os dados como um CONJUNTO DE RELAÇÕES (TABELAS)
ESQUEMAS E INSTÂNCIAS
O Modelo de Dados é basicamente um conjunto de conceitos utilizados para descrever um banco de dados Não existe uma única forma de 
representação deste modelo, porém qualquer forma que permita a correta compreensão das estruturas de dados compreendidas no banco de 
dados pode ser considerada adequada Os tipos de modelo são:
Alto nível ou modelo de 
dados CONCEITUAL
Fornece uma visão mais próxima do modo como os usuários visualizam os dados realmente O modelo entidade-relacionamento e 
o funcional são exemplos deste tipo de abordagem
O CAMPO de uma relação é definido como a área de interseção entre um ATRIBUTO (coluna) e uma TUPLA (linha)
Você pode visitar sites de SGBD como:
Além disso você pode pesquisar na internet sites, vídeos e artigos relacionados ao conteúdo visto Se ainda tiver alguma dúvida, fale com seu professor online 
utilizando os recursos disponíveis no ambiente de aprendizagem
SQL Linguagem Estruturada 
de Consultas 
Meta dados 
Conjunto de 
valores 
armazenados 
pelo Banco de 
Dados em 
seus arquivos 
Informações referentes 
ao tipo e organização 
dos dados do banco 
Módulo do SGBD responsável pelo 
controle do acesso físico aos dados. 
Módulodo SGBD responsável por determinar a 
forma de executar a consulta solicitada pelo 
usuário, via aplicação. Realiza a interpretação do 
comando (análise sintática, léxica e semântica) e 
elabora o plano de execução do comando, 
estabelecendo a forma de acessar fisicamente 
os dados. 
 PESSOA 
CPF NOME COD_DEP 
123 A D-10 
456 B D-10 
789 C D-20 
 DEPART 
COD_DEP NOME LOCAL 
D-10 DEPART-10 L1 
D-20 DEPART-20 L2 
D-30 DEPART-30 L3 
ESQUEMA 
INSTÂNCIA 
DBA 
Desenvolvedor 
EXERCÍCIOS AULA 01 1 08 Q 03 ERROS 05 ACERTOS 62,5 a b c d e
1 3 3 2 0 0
a nova (s): 3 REP 7
b
c X
d E
e
2
a
b
c x
d
e
3
a
b x
c
d
e
4
a x
b
c
d
e
5
a
b x
c
d
e
6
a X
b E
c
d
e
7
a x
b
c
d
e
8
a E
b X
c
d
e
Analise as afirmações a seguir, relativas ao conceito de chave primária:
 i Pode ser composta por um ou vários atributos
 ii Não admite duplicidade de valores, exceto no caso de valores nulos
 iii Deve ser definida durante a construção do modelo de E-R
Marque a alternativa correta (apenas uma opção)
 As afirmações II e III são falsas
um grupo de valores atômicos a partir dos quais um ou mais atributos (ou colunas) retiram seus valores reais
Considere o esquema de banco de dados ilustrado na figura abaixo em que as chaves primárias estão sublinhadas
Podemos afirmar que a coluna cod_curso da tabela Aluno é _____________ da tabela Curso na coluna cod_curso
Assinale a alternativa que contém a sentença que completa a frase acima:
Chave primária
Chave estrangeira
Super Chave
Chave candidata
Chave
Apenas as afirmações I e III são verdadeiras
Apenas as afirmações II e III são verdadeiras
As afirmações I e II são falsas
 Todas as afirmações são verdadeiras
Uma chave candidata é:
uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária
uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela
um conjunto de valores que cada atributo, definido no esquema, assume em um determinado instante, formando o conjunto de tuplas
um conjunto de atributos que descrevem as características dos elementos a serem modelados
Os índices da tabela
As colunas da tabela
As tuplas da tabela
As linhas da tabela
Os nomes das tabelas
Analise as seguintes afirmações:
"(1) O valor de uma chave estrangeira só pode ser inserido em uma tabela se já existe na tabela onde é chave primária PORQUE (2) esta restrição garante a 
integridade referencial"
Podemos afirmar:
As duas afirmações são verdadeiras e primeira justifica a segunda
As duas afirmações são falsas
A primeira afirmação é falsa e a segunda é verdadeira
A primeira afirmação é verdadeira e a segunda é falsa
As duas afirmações são verdadeiras e primeira não justifica a segunda
É responsável por garantir a Integridade Referencial:
Chave Candidata
Chave Estrangeira
Chave Secundária
Chave Primária
Chave de Atributo
Considere o texto a seguir e complete as lacunas, com as expressões constantes nas alternativas, respeitando a correlação sequencial em que estão dispostas
Uma é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais, dentro de uma tabela
Uma é uma coluna ou uma combinação de colunas cujos valores aparecem, necessariamente, na de uma tabela 
Em alguns casos, mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das demais 
Uma das colunas (ou combinação de colunas) é escolhida como As demais colunas ou combinações são denominadas 
A seqüência correta encontra-se apenas em:
Chave primária; chave estrangeira; chave primária; chave secundária; chaves alternativas
Chave primária; super-chave; chave primária; chave candidata; chaves secundárias
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas
Chave primária; chave estrangeira; chave primária; chave primária; chaves estrangeiras
Chave primária; chave primária; chave primária; super-chave; chaves secundárias
Dentre as vantagens da utilização dos SGBDs a seguir, qual NÃO é uma vantagem?
Redução ou Eliminação de redundâncias
Padronização dos dados
Dependência entre programas e dados
Compartilhamento de Dados
Independência dos dados
Os atributos de uma tabela constituem:
EXERCÍCIOS AULA 01 2 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 8 2 4 1 1 0 nova
a 0 nova (s): 9 REP 1
b X 0 173 170
c 0 644 759
d 0
e 0
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas
2 nova
a 0
b 0
c X 0 184
d 0
e 0
3
Mas há ERRO...
nova
a 0
b X 0
c 0
d 0
e 0
4 177
a 0
b x 0
c 0
d 0
e 0
5 nova
a 0
b x 0
c 0
d 0
e 0
6 nova
a 0
b 0
c 0
d x 0
e 0
7 nova
a x 0
b 0
c 0
d 0
e 0
8 nova
a x 0
b 0
c 0
d 0
e 0
cpf, nome
matricula, nome
matricula, cpf
matricula, endereco
Questão não Localizada
Questão não Localizada
Os conceitos de banco de dados relacional refletem o nível de abstração dos dados. Desta forma, marque a alternativa que se refere à instância da entidade.
Uma chave estrangeira é sempre uma chave primária em outra tabela.
Toda entidade deve possui chave primária.
É o conjunto de opções de preenchimento do atributo.
Pode ser considerado como o resultado da aplicação do SELECT.
Pode ser modificado com o uso dos comandos DDL.
Questão não Localizada
Considere a tabela aluno mostrada abaixo:
Qual o atributo poderia ser chave candidata da tabela acima?
cpf
cidade
endereco
Não existe atributo que poderia ser chave candidata.
nome
Questão não Localizada
Considere o esquema:
Aluno(matricula, cpf, nome, endereço).
Assinale a alternativa que não representa uma super-chave deste esquema.
nome, endereço
Chave primária
Chave candidata
Super Chave
Questão não Localizada
Dentre as vantagens da utilização dos SGBDs a seguir, qual NÃO é uma vantagem?
Compartilhamento de Dados.
Dependência entre programas e dados.
Redução ou Eliminação de redundâncias.
Independência dos dados.
Padronização dos dados.
Dependência entre programas e dados
De uma chave primária é certo afirmarmos:
I Pode ser simples ou composta
IINão pode constar entre as chaves candidatas da relação
 III O atributo da chave primária deve ser único
Estão corretas:
II e III
I e III
I, II e III
Somente I
I e II
Considere o texto a seguir e complete as lacunas, com as expressões constantes nas alternativas, respeitando a correlação sequencial em que estão dispostas.
Uma ..................... é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais, dentro de uma tabela.
Uma ...................... é uma coluna ou uma combinação de colunas cujos valores aparecem, necessariamente, na ........................ de uma tabela. 
Em alguns casos, mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das demais. Uma das colunas (ou combinação de 
colunas) é escolhida como ..................... As demais colunas ou combinações são denominadas ........................
A seqüência correta encontra-se apenas em:
Chave primária; chave estrangeira; chave primária; chave primária; chaves estrangeiras.
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas.
Chave primária; chave primária; chave primária; super-chave; chaves secundárias.
Chave primária; chave estrangeira; chave primária; chave secundária; chaves alternativas.
Chave primária; super-chave; chave primária; chave candidata; chaves secundárias.
Questão não Localizada
Os atributosde uma tabela constituem:
Os índices da tabela.
As linhas da tabela.
As colunas da tabela.
As tuplas da tabela.
Os nomes das tabelas.
As colunas da tabela
Considere o esquema de banco de dados ilustrado na figura abaixo em que as chaves primárias estão sublinhadas.
Podemos afirmar que a coluna cod_curso da tabela Aluno é _____________ da tabela Curso na coluna cod_curso.
Assinale a alternativa que contém a sentença que completa a frase acima:
Chave
Chave estrangeira
EXERCÍCIOS AULA 01 3 08 Q 02 ERROS 06 ACERTOS 75,0 a b c d e
1 8 3 1 2 0 2 nova
a x 0 nova (s): 9 REP 1
b 0
c e 0
d 0
e 0
2 nova
a x
1
b
0
c
0 212
d
0
e
0
3 nova
a 0
b 0
c 0
d 0
e x 0
4 nova
a 0
b 0
c 0
d 0
e x 0
5 nova
a 0
b x 0
c 0
d 0
e 0
6 nova
a x 0
b 0 206 205
c 0 303 309
d 0
e 0
 As afirmações II e III são falsas
7 198
a 0
b 0
c x 1
d 0
e 0
8 nova
a e 0
b 0
c x 0
d 0
e 0
Chave Estrangeira
Chave de Atributo
Chave Primária
Chave Estrangeira
Analise as seguintes afirmações: 
"(1) A restrição de integridade referencial diz que chave primária em uma relação não pode ter seu valor nulo PORQUE (2) esta chave identifica as tuplas da 
relação"
Podemos afirmar:
As duas afirmações são verdadeiras e a primeira justifica a segunda.
A primeira afirmação é verdadeira e a segunda é falsa.
A primeira afirmação é falsa e a segunda é verdadeira.
As duas afirmações são falsas.
As duas afirmações são verdadeiras e a primeira não justifica a segunda.
Questão não Localizada
O entendimento dos modelos de banco de dados é fundamental para compreender as vantagens e desvantagens em aspectos de estrutura e manipulação dos 
hierárquico
relacional.
orientado a objetos.
distribuído.
em rede
Questão não Localizada
Analise as afirmações a seguir, relativas ao conceito de chave primária:
 i. Pode ser composta por um ou vários atributos.
 ii. Não admite duplicidade de valores, exceto no caso de valores nulos.
 iii. Deve ser definida durante a construção do modelo de E-R.
Marque a alternativa correta (apenas uma opção)
 As afirmações II e III são falsas.
 Todas as afirmações são verdadeiras.
Apenas as afirmações I e III são verdadeiras.
Apenas as afirmações II e III são verdadeiras.
As afirmações I e II são falsas.
Questão não Localizada
É responsável por garantir a Integridade Referencial:
Chave Secundária
Chave Candidata
um conjunto de valores que cada atributo, definido no esquema, assume em um determinado instante, formando o conjunto de tuplas.
um conjunto de atributos que descrevem as características dos elementos a serem modelados.
uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária.
Com relação a arquitetura distribuída de computadores utilizadas em SGBDs, marque a resposta correta: 
3 Camadas, Cliente/Servidor, Multicamadas (N camadas)
Cliente/Servidor, 3 Camadas , 3 Camadas
Cliente/Servidor, Cliente/Servidor , Multicamadas (N camadas)
Cliente/Servidor, Multicamadas (N camadas), 3 Camadas
Cliente/Servidor, 3 Camadas, Multicamadas (N camadas)
Questão não Localizada
Um atributo de uma tabela que é chave primária em alguma outra tabela é denominado:
Chave simples
Chave candidata
Chave externa
Não existe atributo com esta característica
Chave estrangeira
Questão não Localizada
Analise as seguintes afirmações:
"(1) O valor de uma chave estrangeira só pode ser inserido em uma tabela se já existe na tabela onde é chave primária PORQUE (2) esta restrição garante a 
integridade referencial."
Podemos afirmar:
As duas afirmações são verdadeiras e primeira justifica a segunda.
As duas afirmações são falsas.
As duas afirmações são verdadeiras e primeira não justifica a segunda
A primeira afirmação é verdadeira e a segunda é falsa.
A primeira afirmação é falsa e a segunda é verdadeira.
Questão não Localizada
Uma chave candidata é:
uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária.
uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela.
um grupo de valores atômicos a partir dos quais um ou mais atributos (ou colunas) retiram seus valores reais.
EXERCÍCIOS AULA 01 4 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 8 2 3 1 0 2 nova
a 0 nova (s): 6 REP 4
b x 0
c 0
d 0
e 0
2 nova
a 0
b X 0 2136 2135
c 0 1 244
d 0
e 0
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas
3 nova
a 0
b 0
c 0
d 0
e X 0
4 270
a X 1
b 0
c 0
d 0
e 0
5 277
a X 1
b 0
c 0
d 0
e 0
6 nova
a 0
b 0
c X 1 242
d 0
e 0
7 256
a 0
b X 1
c 0
d 0
e 0
8 177
a 0
b 0
c 0
d 0
e X 0
Chave candidata
Super Chave
Chave estrangeira
De uma chave primária é certo afirmarmos:
II e III
I e III
I, II e III
Somente I
I e II
I e III
Dentre as vantagens da utilização dos SGBDs a seguir, qual NÃO é uma vantagem?
Independência dos dados.
Padronização dos dados.
Compartilhamento de Dados.
Redução ou Eliminação de redundâncias.
Dependência entre programas e dados.
Dependência entre programas e dados
cpf
endereco
cidade
Não existe atributo que poderia ser chave candidata.
nome
cpf
Considere o esquema:
Aluno(matricula, cpf, nome, endereço).
Assinale a alternativa que não representa uma super-chave deste esquema.
nome, endereço
matricula, endereco
matricula, cpf
matricula, nome
cpf, nome
nome, endereço
Considere o esquema de banco de dados ilustrado na figura abaixo em que as chaves primárias estão sublinhadas.
Chave primária
Chave
Chave estrangeira
5,3,2,1,4
Questão não Localizada
(CONSULPLAN - 2012) Dentre os objetivos da implementação de bancos de dados, um visa solucionar um problema que ocorre quando aplicações diferentes 
operam sobre os mesmos dados, armazenados em arquivos diferentes. Esse problema é conhecido por:
Dependência de dados.
Redundância de dados.
Replicação de dados.
Consistência de dados.
Integridade de dados.
Questão não Localizada
Em banco de dados, todo método de controle de concorrência deve evitar anomalias de sincronização. Essas anomalias estão relacionadas a: 
I - perda da consistência do banco.
II - acesso via ODBC.
III - acesso a dados inconsistentes.
IV - consulta recursiva.
V - perda de atualizações.
Estão certos apenas os itens
II, III e V.
I, II e IV.
II, III e IV.
I, IV e V.
I, III e V.
Questão não Localizada
Considere a tabela aluno mostrada abaixo:
Relacione as colunas abaixo:
5,2,1,3,4
5,2,3,1,4
4,2,3,1,5
5,2,3,4,1
EXERCÍCIOS AULA 01 5 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 8 1 2 2 2 1 nova
a 0 nova (s): 4 REP 6
b 0
c X 1 228
d 0
e 0
2 nova
a 0
b X 0
c 0 184
d 0
e 0
3 263
a 0
b 0
c 0
d X 1
e 0
4 212
a X
1
b
0
c
0
d
0
e
0
5 336
a 0
b 0
c X 1
d 0
e 0
6 nova
a 0
b 0
c 0 301
d 0
e X 1
7 308
a 0
b 0
c 0
d X 1
e 0
8 nova
a 0
b X 1
c 0 315
d 0
e 0
orientado a objetos.
relacional.
hierárquico
em rede
distribuído.
relacional.
As duas afirmações são verdadeiras e a primeira não justifica a segunda.
A primeira afirmação é falsa e a segunda é verdadeira.
Com relação a arquitetura distribuída de computadores utilizadas em SGBDs, marque a resposta correta: 
Cliente/Servidor, Cliente/Servidor , Multicamadas (N camadas)
Cliente/Servidor, Multicamadas (N camadas), 3 Camadas
3 Camadas, Cliente/Servidor, Multicamadas (N camadas)
Cliente/Servidor, 3 Camadas , 3 Camadas
Cliente/Servidor,3 Camadas, Multicamadas (N camadas)
Cliente/Servidor, 3 Camadas, Multicamadas (N camadas)
Um atributo de uma tabela que é chave primária em alguma outra tabela é denominado:
Chave simples
Chave externa
Chave candidata
Chave estrangeira
Não existe atributo com esta característica
Chave estrangeira
O entendimento dos modelos de banco de dados é fundamental para compreender as vantagens e desvantagens em aspectos de estrutura e manipulação dos 
É o conjunto de opções de preenchimento do atributo.
Uma chave estrangeira é sempre uma chave primária em outra tabela.
Pode ser considerado como o resultado da aplicação do SELECT.
Toda entidade deve possui chave primária.
Pode ser considerado como o resultado da aplicação do SELECT.
Uma chave candidata é:
uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária.
um conjunto de atributos que descrevem as características dos elementos a serem modelados.
um grupo de valores atômicos a partir dos quais um ou mais atributos (ou colunas) retiram seus valores reais.
um conjunto de valores que cada atributo, definido no esquema, assume em um determinado instante, formando o conjunto de tuplas.
uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela.
uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária.
Analise as seguintes afirmações: 
As duas afirmações são falsas.
A primeira afirmação é verdadeira e a segunda é falsa.
A primeira afirmação é falsa e a segunda é verdadeira.
As duas afirmações são verdadeiras e a primeira justifica a segunda.
Considere o texto a seguir e complete as lacunas, com as expressões constantes nas alternativas, respeitando a correlação sequencial em que estão dispostas.
Uma ..................... é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais, dentro de uma tabela.
Uma ...................... é uma coluna ou uma combinação de colunas cujos valores aparecem, necessariamente, na ........................ de uma tabela. 
Em alguns casos, mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das demais. Uma das colunas (ou combinação de 
colunas) é escolhida como ..................... As demais colunas ou combinações são denominadas ........................
A seqüência correta encontra-se apenas em:
Chave primária; chave primária; chave primária; super-chave; chaves secundárias.
Chave primária; chave estrangeira; chave primária; chave primária; chaves estrangeiras.
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas.
Chave primária; chave estrangeira; chave primária; chave secundária; chaves alternativas.
Chave primária; super-chave; chave primária; chave candidata; chaves secundárias.
Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas.
Os atributos de uma tabela constituem:
As linhas da tabela.
As colunas da tabela.
Os índices da tabela.
As tuplas da tabela.
Os nomes das tabelas.
As colunas da tabela
Os conceitos de banco de dados relacional refletem o nível de abstração dos dados. Desta forma, marque a alternativa que se refere à instância da entidade.
Pode ser modificado com o uso dos comandos DDL.
Aula 2
EXERCÍCIOS AULA 02 1 08 Q 02 ERROS 06 ACERTOS 75,0 a b c d e
1 2 1 3 0 2
a E nova (s): 0 REP 10
b
c
d
e x
2
a
b
c x
d
e
3
a x
b
c
d
e
4
a
b
c x
d
e
5
a
b E
c x
d
e
6
a
b x
c
d
e
7
a x
b
c
d
e
8
a
b
c
d
e x
σ ID > 102 OU id_Depto = 10 E Salario > 2000 (Empregado)
σ ID = 102 OU id_Depto = OU E Salario > 2000 (Empregado)
Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação
Projeção
Interseção
Junção
União
Diferença
A partir da tabela abaixo, identifique a expressão, em álgebra relacional, que permite listar a matrícula dos funcionários do setor de Projetos:
π matricula   (σ setor = "Projetos" (Funcionarios_ste))
σ matricula   (π setor = "Projetos" (Funcionarios_ste))
π setor = "Projetos"   (σ matricula (Funcionarios_ste))
σ setor = "Projetos" (Funcionarios_ste)
π Funcionarios_ste   (σ matricula, setor = "Projetos")
De acordo com a tabela a seguir, como fica a instrução de seleção para recuperarmos os funcionários possuem ID maior do que 102, trabalham no 
Departamento 10 e ganham mais de R$ 2000,00 de Salário?
Considere as relações:
ALUNO (matriculaluno, nomealuno, endereço, telefone)
CURSA (matricula, codigo)
matricula REFERENCIA matriculaluno em ALUNO
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quais os alunos (nome e matrícula) que cursam a disciplina com código CCT0199" está corretamente 
representada em:
π matriculaaluno, nomealuno (CURSA matriculaluno = ⋈matricula DISCIPLINA)
π matriculaaluno, nomealuno (ALUNO matriculaluno = ⋈matricula DISCIPLINA)
π matriculaaluno, nomealuno (ALUNOmatriculaluno = ⋈matricula  (σcodigo = CCT0199 (DISCIPLINA)))
Não existe consulta que reponda a questão
π matriculaluno, nomealuno (ALUNO matriculaluno = ⋈matricula (σcodigo = CCT0199 (CURSA)))
II e III
Somente I
I e III
Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte 
pergunta: quais os nomes dos alunos e seus respectivos cursos?
Alunos(matricula, nome, endereco, cpf, cod_curso)
Cursos(codigo, nome_curso)
π nome, nome_curso(σcod_curso=codigo (Alunos))
π nome, nome_curso(Alunos X Cursos)
π nome, nome_curso(σmatricula=codigo (Alunos X Cursos))
σ nome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos))
π nome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ ID = 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ ID > 102 OU id_Depto = 10 OU Salario > 2000 (Empregado)
A relação T1 abaixo conterá:
T1 = π nome, sexo,salário,dept (σ(sexo="MASCULINO") and (salário<5000) (EMPREGADO)) 
Nome, sexo, salário e depto de todos os empregados homens que ganham menos que 5000
Nome, sexo, salário e depto de todos os empregados que ganham menos que 5000
Esta não é uma consulta válida
Nome, sexo, salário e depto de todos os empregados homens que ganham 5000
Nome e depto de todos os empregados homens que ganham menos que 5000
Considere a relação:
FILME (nome, diretor, tempoduracao, genero, ano)
A consulta em álgebra relacional que retorna o nome e o ano de todos os filmes de ação com tempo de duração entre 120 e 180 minutos
π nome, ano (σ(genero = "ação" OR tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 OR tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao = 120) (FILME) )
π nome, ano (π(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
Em relação a álgebra linear é correto afirmar que:
 I - A operação de projeção é aplicada sobre apenas uma relação visando selecionar um subconjunto de tuplas (com todos os seus atributos)
 II O produto cartesiano é uma operação binária que combina todas as tuplas de duas tabelas
 III - A operação de seleção é aplicada sobre apenas uma relação de visando projetar os atributos de uma relação de acordo com uma lista de atributos 
oferecida
Estão corretas:
Somente III
Somente a II
MODELO RELACIONAL
EXERCÍCIOS AULA 02 2 08 Q00 ERROS 08 ACERTOS 100,0 a b c d e
1 2 3 0 1 2
a nova (s): 3 REP 7
b
c
d
e x
2
a
b x
c
d
e
3
a x
b
c
d
e
4
a
b
c
d x
e
5
a
b x
c
d
e
6
a
b x
c
d
e
7
a
b
c
d
e x
8
a x
b
c
d
e
ᴨnome, nome_curso(σcod_curso=codigo (Alunos))
ᴨnome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
p nome, ano (s(genero = "ação" AND tempoduracao = 120) (FILME) )
 p nome, ano (p(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
p nome, ano (s(genero = "ação" AND tempoduracao >= 120 OR tempoduracao <= 180) (FILME) )
A relação T1 abaixo conterá:
T1 = p nome, sexo,salário,dept (s(sexo="MASCULINO") and (salário<5000) (EMPREGADO)) 
Nome, sexo, salário e depto de todos os empregados homens que ganham 5000
Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação
Junção
Interseção
Projeção
União
Diferença
Nome e depto de todos os empregados homens que ganham menos que 5000
Esta não é uma consulta válida
Nome, sexo, salário e depto de todos os empregados homens que ganham menos que 5000
Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte 
pergunta: quais os nomes dos alunos e seus respectivos cursos?
Alunos(matricula, nome, endereco, cpf, cod_curso)
Cursos(codigo, nome_curso)
Nome, sexo, salário e depto de todos os empregados que ganham menos que 5000
s ID > 102 OU id_Depto = 10 OU Salario > 2000 (Empregado)
s ID > 102 OU id_Depto = 10 E Salario > 2000 (Empregado)
s ID = 102 OU id_Depto = OU E Salario > 2000 (Empregado)
Considere as relações:
ALUNO (matriculaluno, nomealuno, endereço, telefone)
CURSA (matricula, codigo)
matricula REFERENCIA matriculaluno em ALUNO
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quais os alunos (nome e matrícula) que cursam a disciplina com código CCT0199" está corretamente 
representada em:
p matriculaaluno, nomealuno (ALUNO matriculaluno = ⋈matricula DISCIPLINA)
p matriculaaluno, nomealuno (ALUNOmatriculaluno = ⋈matricula (scodigo = CCT0199 (DISCIPLINA)))
p matriculaaluno, nomealuno (CURSA matriculaluno = ⋈matricula DISCIPLINA)
Não existe consulta que reponda a questão
p matriculaluno, nomealuno (ALUNO matriculaluno = ⋈matricula (scodigo = CCT0199 (CURSA)))
De acordo com a tabela a seguir, como fica a instrução de seleção para recuperarmos os funcionários possuem ID maior do que 102, trabalham no 
Departamento 10 e ganham mais de R$ 2000,00 de Salário?
s ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
s ID = 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ matricula   (π setor = "Projetos" (Funcionarios_ste))
π Funcionarios_ste   (σ matricula, setor = "Projetos")
σ setor = "Projetos" (Funcionarios_ste)
Em relação a álgebra linear é correto afirmar que:
II e III
Somente a II
I e III
Somente III
Somente I
Considere a relação:
FILME (nome, diretor, tempoduracao, genero, ano)
A consulta em álgebra relacional que retorna o nome e o ano de todos os filmes de ação com tempo de duração entre 120 e 180 minutos
p nome, ano (s(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
p nome, ano (s(genero = "ação" OR tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
A partir da tabela abaixo, identifique a expressão, em álgebra relacional, que permite listar a matrícula dos funcionários do setor de Projetos:
π setor = "Projetos"   (σ matricula (Funcionarios_ste))
π matricula   (σ setor = "Projetos" (Funcionarios_ste))
ᴨnome, nome_curso(Alunos X Cursos)
σnome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos))
ᴨnome, nome_curso(σmatricula=codigo (Alunos X Cursos))
EXERCÍCIOS AULA 02 3 08 Q 01 ERROS 07 ACERTOS 87,5 a b c d e
1 8 1 0 2 2 3 nova
a 0 nova (s): 10 REP 0
b 0
c 0
d X 0
e 0
2 nova
a 0
b 0 623 620
c 0 201 202
d E 0
e X 1
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
3 nova
a 0
b 0
c 0
d 0
e X 0
4 nova
a 0
b 0
c 0 592
d X 0
e 0
5 nova
a 0
b 0
c 0
d 0
e X 0
6 nova
a 0
b 0
c X 0
d 0
e 0
7 nova
a X
0
b
0
c
0
d
0
e
0
8 nova
a 0
b 0 616 613
c X 1 197 198
d 0
e 0
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
Não existe consulta que responda a esta questão.
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA))
p matriculaprf, nomeprf (PROFESSORmatriculaprf = ⋈matricula MINISTRA)
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRAcodigo = ⋈codigodisciplina(DISCIPLINA)))
Questão não Localizada
De acordo com a tabela a seguir, como fica a instrução de seleção para recuperarmos os funcionários possuem ID maior do que 102, trabalham no 
Departamento 10 e ganham mais de R$ 2.000,00 de Salário?
σ ID > 102 OU id_Depto = 10 OU Salario > 2000 (Empregado)
σ ID = 102 OU id_Depto = OU E Salario > 2000 (Empregado)
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ ID > 102 OU id_Depto = 10 E Salario > 2000 (Empregado)
σ ID = 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
π nome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
Uma linguagem de consulta procedural, onde o objetivo fundamental é permitir a escrita de expressões relacionais é denominada de álgebra relacional. Com 
suas operações fundamentais é possível exprimir qualquer consulta nesta linguagem. Sendo assim, para apresentar os dados de acordo com a tabela abaixo, 
marque a alternativa correta que descreve a álgebra a ser utilizada.
σProduto.Cod_Prod = Estoque.Cod_Prod(πNome, Qualidade, Qtde)
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod)
σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque)
πNome, Qualidade, Qtde
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
Questão não Localizada
Em relação a álgebra linear é correto afirmar que:
 I - A operação de projeção é aplicada sobre apenas uma relação visando selecionar um subconjunto de tuplas (com todos os seus atributos).
 II O produto cartesiano é uma operação binária que combina todas as tuplas de duas tabelas.
 III - A operação de seleção é aplicada sobre apenas uma relação de visando projetar os atributos de uma relação de acordo com uma lista de atributos 
oferecida.
Estão corretas:
Somente I
II e III
Somente a II
I e III
Somente III
Questão não Localizada
Considere as relações:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quem são os professores (nome e matrícula) que ministram a disciplina Implementação de Bancos 
de Dados" está corretamente representada em:
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo = ⋈codigodisciplina(snomedisciplina = "Implementação de 
Bancos de Dados" (DISCIPLINA)))
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 OR tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" OR tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 AND tempoduracao<= 180) (FILME) )
Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação.
Projeção
Diferença
União
Interseção
Junção
Questão não Localizada
Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte 
σnome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos))
ᴨnome, nome_curso(σmatricula=codigo (Alunos X Cursos))
ᴨnome, nome_curso(σcod_curso=codigo (Alunos))
ᴨnome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
ᴨnome, nome_curso(Alunos X Cursos)
Produto cartesiano
Projeção
Junção
Seleção
Diferença
Questão não Localizada
Considere a relação:
FILME (nome, diretor, tempoduracao, genero, ano)
A consulta em álgebra relacional que retorna o nome e o ano de todos os filmes de ação com tempo de duração entre 120 e 180 minutos.
π nome, ano (σ(genero = "ação" AND tempoduracao = 120) (FILME) )
π nome, ano (π(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
EXERCÍCIOS AULA 02 4 08 Q 02 ERROS 06 ACERTOS 75,0 a b c d e
1 8 0 2 1 2 3 nova
a E 0 nova (s): 8 REP 2
b 0
c 0
d 0
e X 0
2 nova
a 0
b X 1
c 0 606
d 0
e 0
3 nova
a 0
b 0
c 0 641
d 0
e X 0
4 650
a 0
b X 1 1104 1098
c 0 0 114
d 0
e 0
INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
5 nova
a 0
b 0
c E 0 CLIQUEI ERRADO NA WEB 743
d X 1
e 0
6 nova
a
0
b
0
c
0 750
d X
1
e
0
7 757
a 0
b 0
c X 0
d 0
e 0
8 nova
a 0
b 0
c 0 736
d 0
e X 1
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
Não existe consulta que responda a esta questão.
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo = ⋈codigodisciplina(snomedisciplina = 
"Implementação de Bancos de Dados" (DISCIPLINA)))
p matriculaprf, nomeprf (PROFESSORmatriculaprf = ⋈matricula MINISTRA)
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo = ⋈codigodisciplina(snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA)))
De acordo com a tabela a seguir, como fica a instrução de seleção para recuperarmos os funcionários possuem ID maior do que 102, trabalham no 
Departamento 10 e ganham mais de R$ 2.000,00 de Salário?
s ID > 102 OU id_Depto = 10 E Salario > 2000 (Empregado)
s ID > 102 OU id_Depto = 10 OU Salario > 2000 (Empregado)
s ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
s ID = 102 OU id_Depto = OU E Salario > 2000 (Empregado)
s ID = 102 E id_Depto = 10 E Salario > 2000 (Empregado)
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
Uma linguagem de consulta procedural, onde o objetivo fundamental é permitir a escrita de expressões relacionais é denominada de álgebra relacional. Com 
suas operações fundamentais é possível exprimir qualquer consulta nesta linguagem. Sendo assim, para apresentar os dados de acordo com a tabela abaixo, 
marque a alternativa correta que descreve a álgebra a ser utilizada.
σProduto.Cod_Prod = Estoque.Cod_Prod(πNome, Qualidade, Qtde)
πNome, Qualidade, Qtde
σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque)
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod)
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
A relação T1 abaixo conterá:
T1 = p nome, sexo,salário,dept (s(sexo="MASCULINO") and (salário<5000) (EMPREGADO)) 
Nome, sexo, salário e depto de todos os empregados homens que ganham 5000
Nome, sexo, salário e depto de todos os empregados homens que ganham menos que 5000
Nome e depto de todos os empregados homens que ganham menos que 5000
Esta não é uma consulta válida
Nome, sexo, salário e depto de todos os empregados que ganham menos que 5000
Nome, sexo, salário e depto de todos os empregados homens que ganham menos que 5000
Em relação a álgebra linear é correto afirmar que:
I e III
Somente I
Somente III
Somente a II
II e III
Somente a II
Considere as relações:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quem são os professores (nome e matrícula) que ministram a disciplina Implementação de Bancos 
de Dados" está corretamente representada em:
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRAcodigo = ⋈codigodisciplina(DISCIPLINA)))
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA))
Nome de todas mulheres que ganham 1500 e estão lotados no departamento 5.
Nome de todas mulheres que ganham mais do que 1500 e não estão lotadas no departamento 5.
Questão não Localizada
A partir da tabela abaixo, identifique a expressão, em álgebra relacional, que permite listar a matrícula dos funcionários do setor de Projetos:
σ setor = "Projetos" (Funcionarios_ste)
π matricula (σ setor = "Projetos" (Funcionarios_ste))
π Funcionarios_ste   (σ matricula, setor = "Projetos")
σ matricula   (π setor = "Projetos" (Funcionarios_ste))
π setor = "Projetos"   (σ matricula (Funcionarios_ste))
π matricula (σ setor = "Projetos" (Funcionarios_ste))
Considere as relações:
ALUNO (matriculaluno, nomealuno, endereço, telefone)
CURSA (matricula, codigo)
matricula REFERENCIA matriculaluno em ALUNO
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quais os alunos (nome e matrícula) que cursam a disciplina com código CCT0199" está corretamente 
representada em:
p matriculaaluno, nomealuno (ALUNOmatriculaluno = ⋈matricula (scodigo = CCT0199 (DISCIPLINA)))
Não existe consulta que reponda a questão
p matriculaaluno, nomealuno (ALUNO matriculaluno = ⋈matricula DISCIPLINA)
p matriculaaluno, nomealuno (CURSA matriculaluno = ⋈matricula DISCIPLINA)
p matriculaluno, nomealuno (ALUNO matriculaluno = ⋈matricula (scodigo = CCT0199 (CURSA)))
π matriculaluno, nomealuno (ALUNO matriculaluno = ⋈matricula (σcodigo = CCT0199 (CURSA)))
Sejam as relações:
 T1 = p nome (s(sexo="FEMININO") and (salário>1500) (EMPREGADO))
 T2 = p nome (sdept=5 (EMPREGADO))
A relação T3 = T1 - T2 conterá:
Nome de todas mulheres que ganham mais do que 1500 e estão lotadas no departamento 5.
Nome de todas mulheres que ganham mais do que 1500 ou estão lotadas no departamento 5.
Nome de todas mulheres que ganham mais do 1500
EXERCÍCIOS AULA 02 5 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 8 2 3 1 1 1 nova
a X 1 nova (s): 6 REP 4
b 0
c 0 708
d 0
e 0
2 nova
a X 0
b 0
c 0 715
d 0
e 0
3 722
a 0
b 0
c X 1
d 0
e 0
4 nova
a 0
b 0
c 0 592
d 0
e X 0
5 nova
a 0
b X 1
c 0 736
d 0
e 0
6 nova
a 0
b 0
c 0 743
d X 1
e 0
7 nova
a
0
b X
1
c
0 750
d
0
e
0
8 757
a 0
b X 0
c 0
d 0
e 0
De acordo com a tabela a seguir, como fica a instrução de seleção para recuperarmos os funcionários possuem ID maior do que 102, trabalham no 
Departamento 10 e ganham mais de R$ 2.000,00 de Salário?
s ID > 102 OU id_Depto = 10 E Salario > 2000 (Empregado)
s ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
s ID > 102 OU id_Depto = 10 OU Salario > 2000 (Empregado)
s ID = 102 E id_Depto = 10 E Salario > 2000 (Empregado)
s ID = 102 OU id_Depto = OU E Salario > 2000 (Empregado)
σ ID > 102 E id_Depto = 10 E Salario > 2000 (Empregado)
πNome, Qualidade, Qtde(σProduto.Cod_Prod= Estoque.Cod_Prod)
σProduto.Cod_Prod = Estoque.Cod_Prod(πNome, Qualidade, Qtde)
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
Em relação a álgebra linear é correto afirmar que:
II e III
I e III
Somente I
Somente a II
Somente III
Somente a II
Considere as relações:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quem são os professores (nome e matrícula) que ministram a disciplina Implementação de Bancos 
de Dados" está corretamente representada em:
p matriculaprf, nomeprf (PROFESSORmatriculaprf = ⋈matricula MINISTRA)
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo = ⋈codigodisciplina(snomedisciplina = 
"Implementação de Bancos de Dados" (DISCIPLINA)))
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRAcodigo = ⋈codigodisciplina(DISCIPLINA)))
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA))
Não existe consulta que responda a esta questão.
p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo = ⋈codigodisciplina(snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA)))
União
Projeção
Junção
Diferença
Interseção
Junção
Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte 
pergunta: quais os nomes dos alunos e seus respectivos cursos?
Alunos(matricula, nome, endereco, cpf, cod_curso)
Cursos(codigo, nome_curso)
σnome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos))
ᴨnome, nome_curso(σmatricula=codigo (Alunos X Cursos))
ᴨnome, nome_curso(Alunos X Cursos)
ᴨnome, nome_curso(σcod_curso=codigo (Alunos))
ᴨnome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
π nome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
Uma linguagem de consulta procedural, onde o objetivo fundamental é permitir a escrita de expressões relacionais é denominada de álgebra relacional. Com 
suas operações fundamentais é possível exprimir qualquer consulta nesta linguagem. Sendo assim, para apresentar os dados de acordo com a tabela abaixo, 
marque a alternativa correta que descreve a álgebra a ser utilizada.
πNome, Qualidade, Qtde
πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque)
A operação da álgebra relacional que recupera linhas em uma tabela é denominada:
Seleção
Produto cartesiano
Diferença
Junção
Projeção
Seleção
Considere a relação:
p nome, ano (s(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
 p nome, ano (p(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
p nome, ano (s(genero = "ação" AND tempoduracao >= 120 OR tempoduracao <= 180) (FILME) )
p nome, ano (s(genero = "ação" AND tempoduracao = 120) (FILME) )
p nome, ano (s(genero = "ação" OR tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
π nome, ano (σ(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação.
Aula 3
EXERCÍCIOS AULA 03 1 08 Q 05 ERROS 03 ACERTOS 37,5 a b c d e
1 0 2 3 1 2
a nova (s): 0 REP 10
b
c x
d
e
2
a
b x
c
d
e
3
a
b
c x
d
e
4
a
b
c
d E
e x
5
a
b E
c
d
e x
6
a
b x
c
d E
e
7
a
b
c
d x
e e
8
a E
b
c x
d
e
CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER(5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT NULL, 
ANOADMISSAO VARCHAR (4) NOT NULL, PRIMARY KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER 
(2) NOT NULL, PRIMARY KEY (CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA NUMBER (5) NOT NULL, CODIGO VARCHAR (5) NOT NULL, PRIMARY KEY (MATRICULA, CODIGO), 
FOREIGN KEY MATRICULA REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES DISCIPLINA 
(CODIGODISCIPLINA)); 
CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT 
NULL, ANOADMISSAO VARCHAR (4) NOT NULL, PRIMARY KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL, NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER 
(2) NOT NULL, PRIMARY KEY (CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA NUMBER (5) NOT NULL, CODIGO VARCHAR (5), PRIMARY KEY (MATRICULA, CODIGO));
CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL, NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT 
NULL, ANOADMISSAO VARCHAR (4) NOT NULL);
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER 
(2) NOT NULL);
CREATE TABLE MINISTRA (MATRICULA NUMBER (5) NOT NULL, CODIGO VARCHAR (5) NOT NULL);
CHAR(tam)
RAW(tam)
Assinale a opção que possui o comando CREATE TABLE que cria corretamente a tabela "Alunos", segundo o seguinte esquema de banco de dados: 
Alunos(matricula, nome, endereco, cod_curso) Cursos(codigo, nome) Admitindo que os campos "matricula" e "codigo" são chaves primárias de suas tabelas e 
que o campo "cod_curso" é chave estrangeira da tabela "Cursos" na tabela "Alunos"
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (nome), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (matricula) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint 
fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (matricula), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, 
constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (codigo) references Cursos(cod_curso) 
)
Considere o esquema abaixo:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
Os comandos SQL apresentam todos os elementos necessários para a sua criação estão representados em:CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR 
(15) NOT NULL, ANOADMISSAO VARCHAR (4) NOT NULL);
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, 
CREDITOS NUMBER (2) NOT NULL);
CREATE TABLE MINISTRA (MATRICULA NUMBER(5) NOT NULL, CODIGO VARCHAR (5) NOT NULL, PRIMARY KEY (MATRICULA, 
CODIGO), FOREIGN KEY MATRICULA REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES 
DISCIPLINA (CODIGODISCIPLINA));
CREATE TABLE PROFESSOR ( MATRICULAPRF NOT NULL,NOMEPRF NOT NULL, TITULACAO NOT NULL, ANOADMISSAO NOTNULL, PRIMARY 
KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA NOT NULL,NOMEDISCIPLINA NOT NULL, CREDITOS NOT NULL, PRIMARY KEY 
(CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA NOT NULL, CODIGO NOT NULL, PRIMARY KEY (MATRICULA, CODIGO), FOREIGN KEY MATRICULA 
REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES DISCIPLINA (CODIGODISCIPLINA));
Os funcionários ativos recebem aumento
Na figura é exibida a estrutura da tabela TCC Deseja-se realizar uma mudança nesta tabela que não permita o cadastro de um TCC contendo o mesmo título que 
um TCC já cadastrado previamente Assinale qual a alternativa abaixo realiza esta mudança corretamente:
ALTER TABLE TITULO ADD UNIQUE(TCC);
ALTER TABLE TCC CHANGE UNIQUE(TITULO);
ALTER TABLE TCC ADD TITULO (UNIQUE);
ALTER TABLE TCC CHANGE TITULO (UNIQUE);
ALTER TABLE TCC ADD UNIQUE(TITULO);
No Script SQL de criação da tabela pagamento aparece a palavra 'funcionario' 4 vezes Sendo assim, é possível afirmar que se referem, respectivamente:
tupla, chave primária, apelido, chave estrangeira
coluna, tabela, apelido, chave primária
apelido, atributo, tabela, chave estrangeira
campo, atributo, apelido, tabela
atributo, apelido, campo, tabela
Durante a criação de uma tabela, é detectada a necessidade de se definir um atributo de texto que armazenará dados com tamanhos entre 2000 e 3000 
caracteres Qual é o tipo adequado a ser usado este atributo neste caso?
LONG
VARCHAR2(tam)
LONG RAW
A linguagem SQL pode ter vários enfoques, EXCETO:
Linguagem de consulta em ambiente cliente/servidor
Linguagem para acesso às bases de dados
Linguagem para a programação de sistemas de informação
Linguagem interativa de consulta (query AdHoc)
Linguagem de administração de banco de dados
Sabemos que a Linguagem SQL é utilizada para acesso a banco de dados e é dividida em comandos DDL, DQL, DML, DCL e DTL São comandos da DML (Data 
Manipulation Language)
GRANT, REVOKE
INSERT, UPDATE e DELETE
SELECT
CREATE, DROP e ALTER
Qual o efeito da seguinte instrução no banco de dados? UPDATE Funcionarios SET salario = salario * 1.1
Todos os funcionários são apagados
A coluna salario é excluída da tabela
Todos os funcionários recebem um aumento de 10%
Todos os funcionários passam a ganhar 11
MODELO RELACIONAL
EXERCÍCIOS AULA 03 2 08 Q 01 ERROS 07 ACERTOS 87,5 a b c d e
1 1 4 0 0 3
a
nova (s): 0 REP 10
b x
c
d
e
2
a
b
c
d
e x
3
a E
b x
c
d
e
4
a
b x
c
d
e
5
a x
b
c
d
e
6
a
b
c
d
e x
7
a
b x
c
d
e
8
a
b
c
d
e x
INSERT INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
Para desenvolvimento de aplicações gráficas
Para desenho de telas
Para manipulação de banco de dados
(CONSULPLAN - 2012) Ao contrário das linguagens tradicionais, que são procedimentais, SQL é uma linguagem declarativa, que integra três sublinguagens: Data 
Manipulation Language (DML), Data Definition Language (DDL) e Data Control Language (DCL) Um comando DML e outro DDL são, respectivamente:
Update e Grant
Update e Drop
Delete e Update
Drop e Grant
Grant e Delete
CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSO INTEGER, PRIMARY KEY (MATRICULA));
CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); 
CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO));
 CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSOS VARCHAR(50), PRIMARY KEY (MATRICULA));
Dependência de fabricante
Considere o script:
CREATE TABLE PECA (CODIGO NUMERIC(5) NOT NULL,
DESCRICAO VARCHAR(20) NOT NULL,
ESTOQUE NUMERIC(5) NOT NULL,
PRIMARY KEY(CODIGO));
Após a criação desta tabela, o comando que inclui a tupla (1234, "lápis de cor", 500) está representado em:
INSERT INTO PECA (1234, "lápis de cor", 500);
INCLUDE INTO PECA (1234, "lápis de cor", 500);
INSERT PECAS (1234, "lápis de cor", 500);
INSERT INTO PECAS ("1234", "lápis de cor", 500);
INSERT INTO PECAS (1234, "lápis de cor", 500);
SQL é uma linguagem?
Para criação de scripts
Para criar regras de negócios que rodam no servidor
Para incluir a tupla mostrada abaixo na tabela PACIENTE executaríamos o seguinte comando:
ADD INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
ADD INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
É uma vantagem de uso da linguagem SQL:
Visão única dos dados
Como ficaria o comando SQL para criar a tabela a seguir?
CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT 
NUMBER(9,2) )
CREATE TABLE X_PROD ( CODIGO VARCHAR2(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT 
NUMBER(9,2) )
Definição dinâmica dos dados
Alto custo de treinamento
Dependência de plataforma
Dado o seguinte requisito funcional: 
É necessário cadastrar a matrícula, o nome e o curso dos alunos, e sabendo que um aluno pode fazer mais de um curso e um curso ter mais de um aluno 
Qual das questões representa a normalização correta de um banco de dados relacional?
CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSO INTEGER, PRIMARY KEY (MATRICULA), FOREIGN KEY (CURSO) 
REFERENCES CURSOS (CODIGO));
CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); 
CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO), 
FOREIGN KEY (ALUNO) REFERENCES ALUNOS (MATRICULA), FOREIGN KEY (CURSO) REFERENCES CURSOS (CODIGO));
O comando SQL que apaga um tabela é:
INSERT INTO
REMOVE TABLE
UPDATE
DELETE TABLE
DROP TABLE
EXERCÍCIOS AULA 03 3 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 1 5 1 0 1
a nova (s): 2 REP 8
b x
c
d
e
2
a x
b
c
d
e
3
a
b x
c
d
e
4
a
b
c
d
e x
5
a
b x
c
d
e
6
a
b x
c
d
e
7
a
b
c x
d
e
8
a
b x
c
d
e
CREATE / ALTER / DROP
Como ficaria o comando SQL para criar a tabela a seguir?
CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT 
NUMBER(9,2) )
CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_PROD ( CODIGO VARCHAR2(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), 
VALOR_UNIT NUMBER(9,2) )
CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADENUMBER(8), VALOR_UNIT 
NUMBER(9,2) )
Na figura é exibida a estrutura da tabela TCC Deseja-se realizar uma mudança nesta tabela que não permita o cadastro de um TCC contendo o mesmo título que 
um TCC já cadastrado previamente Assinale qual a alternativa abaixo realiza esta mudança corretamente:
ALTER TABLE TCC ADD TITULO (UNIQUE);
ALTER TABLE TCC ADD UNIQUE(TITULO);
ALTER TABLE TITULO ADD UNIQUE(TCC);
ALTER TABLE TCC CHANGE TITULO (UNIQUE);
ALTER TABLE TCC CHANGE UNIQUE(TITULO);
INSERT INTO
UPDATE
DELETE TABLE
A linguagem SQL pode ter vários enfoques, EXCETO:
Linguagem interativa de consulta (query AdHoc)
Linguagem de consulta em ambiente cliente/servidor
Linguagem para a programação de sistemas de informação
Linguagem de administração de banco de dados
Linguagem para acesso às bases de dados
O comando SQL que apaga um tabela é:
REMOVE TABLE
DROP TABLE
(CONSULPLAN - 2012) Ao contrário das linguagens tradicionais, que são procedimentais, SQL é uma linguagem declarativa, que integra três sublinguagens: Data 
Manipulation Language (DML), Data Definition Language (DDL) e Data Control Language (DCL) Um comando DML e outro DDL são, respectivamente:
Update e Drop
Drop e Grant
Grant e Delete
Delete e Update
Update e Grant
Para incluir a tupla mostrada abaixo na tabela PACIENTE executaríamos o seguinte comando:
ADD INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
ADD INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
São comandos da categoria de Definição de Dados (DDL):
GRANT / REVOKE
SELECT
INSERT / UPDATE / DELETE
COMMIT / ROLLBACK
É uma vantagem de uso da linguagem SQL:
Dependência de plataforma
Definição dinâmica dos dados
Dependência de fabricante
Alto custo de treinamento
Visão única dos dados
EXERCÍCIOS AULA 03 4 08 Q 00 ERROS 08 ACERTOS 100,0 a b c d e
1 8 0 2 0 3 3 nova
a 0 nova (s): 7 REP 3
b 0
c 0 1063
d 0
e X 1
2 nova
a 0
b 0
c 0 991
d X 1
e 0
3 nova
a 0
b X 0 1017 1012
c 0 258 260
d 0
e 0
ALTER TABLE TCC ADD UNIQUE(TITULO);
4 1099
a 0
b 0
c 0
d 0
e X 1
5 nova
a 0
b 0 2167 2164
c 0 1 73
d X 0
e 0
Exclui todas as linhas da tabela
6 1005
a 0
b X 0 1008 1005
c 0 102 102
d 0
e 0
Todos os funcionários recebem um aumento de 10%
7 1130
a 0
b 0
c 0
d 0
e X 1
8 nova
a 0
b 0 1000 998
c 0 167 168
d X 0
e 0
INSERT, UPDATE e DELETE
GRANT / REVOKE
INSERT / UPDATE / DELETE
SELECT
COMMIT / ROLLBACK
CREATE / ALTER / DROP
CREATE / ALTER / DROP
Sabemos que a Linguagem SQL é utilizada para acesso a banco de dados e é dividida em comandos DDL, DQL, DML, DCL e DTL. São comandos da DML (Data 
Manipulation Language)
SELECT
GRANT, REVOKE
CREATE, DROP e ALTER
INSERT, UPDATE e DELETE
Questão não Localizada
INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
Qual o efeito da seguinte instrução no banco de dados? DELETE FROM tabela
Exclui o banco de dados inteiro
Exclui a primeira linha da tabela
Exclui todas as colunas da tabela
Exclui todas as linhas da tabela
Exclui a tabela do banco de dados
Questão não Localizada
Qual o efeito da seguinte instrução no banco de dados? UPDATE Funcionarios SET salario = salario * 1.1
Os funcionários ativos recebem aumento
Todos os funcionários recebem um aumento de 10%
A coluna salario é excluída da tabela
Todos os funcionários são apagados
Todos os funcionários passam a ganhar 1.1
Questão não Localizada
São comandos da categoria de Definição de Dados (DDL):
Linguagem para acesso às bases de dados
Linguagem de consulta em ambiente cliente/servidor
Linguagem para a programação de sistemas de informação
Linguagem interativa de consulta (query AdHoc)
Linguagem para a programação de sistemas de informação
Na figura é exibida a estrutura da tabela TCC. Deseja-se realizar uma mudança nesta tabela que não permita o cadastro de um TCC contendo o mesmo 
título que um TCC já cadastrado previamente. Assinale qual a alternativa abaixo realiza esta mudança corretamente:
ALTER TABLE TCC ADD TITULO (UNIQUE);
ALTER TABLE TCC ADD UNIQUE(TITULO);
ALTER TABLE TITULO ADD UNIQUE(TCC);
ALTER TABLE TCC CHANGE TITULO (UNIQUE);
ALTER TABLE TCC CHANGE UNIQUE(TITULO);
Questão não Localizada
Para incluir a tupla mostrada abaixo na tabela PACIENTE executaríamos o seguinte comando:
INSERT INTO paciente (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
ADD INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
ADD INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
INSERT INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
É uma vantagem de uso da linguagem SQL:
Dependência de plataforma
Dependência de fabricante
Alto custo de treinamento
Visão única dos dados
Definição dinâmica dos dados
Definição dinâmica dos dados
A linguagem SQL pode ter vários enfoques, EXCETO:
Linguagem de administração de banco de dados
EXERCÍCIOS AULA 03 5 08 Q 01 ERROS 07 ACERTOS 87,5 a b c d e
1 8 4 0 1 1 2 nova
a 0 nova (s): 8 REP 2
b 0
c 0 1078
d 0
e X 1
2 nova
a X 0
b 0
c 0
d 0
e E 0
3 nova
a X 0
b 0
c 0
d 0
e 0
4 nova
a 0
b 0 1024 1019
c X 0 149 150
d 0
e 0
atributo, apelido, campo, tabela
5 nova
a 0
b 0
c 0
d 0
e X 0
6 nova
a X
1
b
0
c
0 1033
d
0
e
0
7 nova
a 0
b 0
c 0
d X 0
e 0
8 nova
a X 1
b 0 1073 1071
c 0 271 272
d 0
e 0
CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO), FOREIGN KEY (ALUNO) REFERENCES ALUNOS (MATRICULA), FOREIGN KEY (CURSO) REFERENCES CURSOS (CODIGO));
 CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSO INTEGER, PRIMARY KEY (MATRICULA));
 CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); 
CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO), 
FOREIGN KEY (ALUNO) REFERENCES ALUNOS (MATRICULA), FOREIGN KEY (CURSO) REFERENCES CURSOS (CODIGO));
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (nome), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (matricula) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos 
primary key (matricula), constraint fk_alunos_cursos foreign key (codigo) references Cursos(cod_curso) )
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint 
fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
createtable Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula), constraint 
fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
Durante a criação de uma tabela, é detectada a necessidade de se definir um atributo de texto que armazenará dados com tamanhos entre 2000 e 3000 
caracteres. Qual é o tipo adequado a ser usado este atributo neste caso?
CHAR(tam)
RAW(tam)
LONG RAW
VARCHAR2(tam)
LONG
Questão não Localizada
Dado o seguinte requisito funcional: 
É necessário cadastrar a matrícula, o nome e o curso dos alunos, e sabendo que um aluno pode fazer mais de um curso e um curso ter mais de um aluno. 
Qual das questões representa a normalização correta de um banco de dados relacional?
 CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); 
CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO), 
FOREIGN KEY (ALUNO) REFERENCES ALUNOS (MATRICULA), FOREIGN KEY (CURSO) REFERENCES CURSOS (CODIGO));
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSOS VARCHAR(50), PRIMARY KEY (MATRICULA));
 CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), PRIMARY KEY (MATRICULA)); 
CREATE TABLE INSCRICAO (ALUNO INTEGER, CURSO INTEGER, PRIMARY KEY (ALUNO,CURSO));
 CREATE TABLE CURSOS (CODIGO INTEGER, DESCRICAO VARCHAR(100), PRIMARY KEY (CODIGO)); 
CREATE TABLE ALUNOS (MATRICULA INTEGER, NOME VARCHAR(100), CURSO INTEGER, PRIMARY KEY (MATRICULA), FOREIGN KEY (CURSO) 
REFERENCES CURSOS (CODIGO));
Questão não Localizada
No Script SQL de criação da tabela pagamento aparece a palavra 'funcionario' 4 vezes. Sendo assim, é possível afirmar que se referem, respectivamente:
tupla, chave primária, apelido, chave estrangeira
apelido, atributo, tabela, chave estrangeira
atributo, apelido, campo, tabela
coluna, tabela, apelido, chave primária
campo, atributo, apelido, tabela
Questão não Localizada
O comando SQL para excluir os registros da tabela Aluno, cujo campo nome comece com a letra M, é:
DELETE FROM Aluno WHERE nome='M'.
DELETE FROM Aluno WHERE nome LIKE 'G%'.
DELETE FROM Aluno WHERE nome SUCH '%M'.
DELETE FROM Aluno
DELETE FROM Aluno WHERE nome LIKE 'M%'.
Questão não Localizada
Assinale a opção que possui o comando CREATE TABLE que cria corretamente a tabela "Alunos", segundo o seguinte esquema de banco de dados: 
create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, 
constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) 
)
INSERT INTO PECAS (1234, "lápis de cor", 500);
INSERT INTO PECAS ("1234", "lápis de cor", 500);
INSERT INTO PECA (1234, "lápis de cor", 500);
INSERT INTO PECA (1234, "lápis de cor", 500);
Partindo da tabela a seguir, considerando que a mesma já foi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para inserir um 
registro na tabela?
INSERT INTO X_PROD VALUES ( 20, 'TV Led 40 polegadas', 400, 3000);
INSERT INTO X_PROD VALUES ('TV Led 40 polegadas', 20, 400, 3000);
INSERT INTO X_PROD VALUES (20, TV Led 40 polegadas, 400, 3000);
INSERT INTO X_PROD VALUES ( TV Led 40 polegadas, 20, 400, 3000);
INSERT INTO X_PROD VALUES ('20', 'TV Led 40 polegadas', '400', '3000');
Questão não Localizada
Para excluir tuplas de uma tabela devemos utilizar?
DELETE
DROP
UPDATE
INSERT
SELECT
Considere o script:
INCLUDE INTO PECA (1234, "lápis de cor", 500);
INSERT PECAS (1234, "lápis de cor", 500);
EXERCÍCIOS AULA 04 1 08 Q 02 ERROS 06 ACERTOS 75,0 a b c d e
1 1 1 2 1 3
a nova (s): 0 REP 10
b
c x
d
e
2
a
b
c
d x
e
3
a
b
c
d
e x
4
a
b
c x
d
e
5
a
b x
c E
d
e
6
a
b
c
d
e x
7
a
b
c
d
e x
8
a x
b
c E
d
e
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE CARGO LIKE '%VENDA%' ;
SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE '%VENDA%' ;
SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE CARGO LIKE '%VENDA%' ;
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE '%VENDA%' ;
SELECT EID_EMP_MATRICULA AS MATRICULA, EVC_EMP_NOME AS NOME, CVC_CAR_NOME AS CARGO FROM EMPREGADO E INNER JOIN 
CARGO C ON ENU_EMP_CARGO = CID_CAR_CODIGO;
SELECT EID_EMP_MATRICULA AS MATRICULA, EVC_EMP_NOME AS NOME, CVC_CAR_NOME AS CARGO FROM EMPREGADO E RIGHT JOIN CARGO C 
ON ENU_EMP_CARGO = CID_CAR_CODIGO;
SELECT EID_EMP_MATRICULA AS MATRICULA, EVC_EMP_NOME AS NOME, CVC_CAR_NOME AS CARGO FROM EMPREGADO E, CARGO C WHERE 
ENU_EMP_CARGO = CID_CAR_CODIGO;
SELECT NOMEP, NOMEA, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE PMATP = AMATP AND AMATA = TMATA;
SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE PMATP = AMATP AND AMATA = 
TMATA;
SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE PMATP = AMATP;
De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar apenas os nomes completos dos Empregados que trabalhem nos Departamentos 11, 21, 22, 31, 42 ou 51
SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE ID_DEPTO ON (11, 21, 22, 31, 42, 51);
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE ID_DEPTO ON (11, 21, 22, 31, 42, 51);
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE ID_DEPTO =11 AND ID_DEPTO =21 AND ID_DEPTO =22 AND ID_DEPTO 
=31 AND ID_DEPTO =42 AND ID_DEPTO =51;
Aula 04
SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE ID_DEPTO IN (11, 21, 22, 31, 42, 51);
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE ID_DEPTO IN (11, 21, 22, 31, 42, 51);
O comando SELECT FROM WHERE corresponde as seguintes operações da álgebra relacional:
Projeção e União
Seleção e Junção
Seleção e Projeção
Seleção e Diferença 
União e Interseção
O esquema abaixo refere-se a um banco de dados criado para auxiliar na gerência de orientação de alunos por professores e da defesa do Trabalho de Conclusão de Curso 
(TCC) pelos alunos Analise-o:
Professor (MatP,NomeP, telP, emailP)
Aluno (MatA, MatP, NomeA, emailA)
TCC (IDTCC, MatA, Titulo, Resumo)
Assinale a única alternativa que retorna exatamente os dados exibidos na figura:
SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE PMATP = AMATP AND AMATA = 
TMATA;
SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE PMATP = AMATP AND AMATA = TMATA;
SELECT DATA, TEMPAGUA, (COMPRIMENTO * 39,3700787) Polegadas FROM TUBARÃO T, CAPTURA C WHERE CIDTUBARÃO = 
TIDTUBARÃO;
SELECT DATA, TEMPAGUA, "COMPRIMENTO * 39,3700787" Polegadas FROM TUBARÃO T, CAPTURA C WHERE CIDTUBARÃO = TIDTUBARÃO;
SELECT DATA, TEMPAGUA, COMPRIMENTO * 39,3700787 Polegadas FROM TUBARÃO T, CAPTURA C WHERE CIDTUBARÃO = TIDTUBARÃO;
De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar apenas os nomes completos dos Empregados que tenham no cargo a palavra "venda"
SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE '%venda%' ;
Ao selecionar os dados de uma tabela, para visualização ou outra necessidade podemos restringir o seu espectro de visualização utilizando a cláusula:
ORDER
UNTIL
WHERE
FROM
UP
O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões

Outros materiais