Você está na página 1de 10

Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado.

Este material pode ser protegido por direitos


autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

DISERTATIVAS

P). Em um cadastro de produto, compõe-se uma tabela de para “produto” e outra para
“tipo de produto”, conforme o diagrama a seguir:

Existem produtos cadastrados sem nenhum tipo associado. Sabendo que existe um
relacionamento de 1-N entre tipo de produto e produto, como poderíamos identificar esses
tipos ?
select nome_produto, nome_tipo from produto

left join tipo_de_produto on produto.cod_tipo = tipo_de_produto.cod_tipo

P). Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são
um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas
categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco
de dados (SGBD). Dia quais são essas duas categorias e explique brevemente o seu uso.
DDL: permite a especificação do esquema da organização, ou seja, entidades com seus
atributos e tipos de dados associados, os relacionamentos entre essas entidades e os
índices de acesso associados aos atributos.

DML: permite as operações de manipulação de dados, executadas pelas aplicações


inclusão, alteração, exclusão e consulta.

P). Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus
respectivos professores.

SELECT A.NOME, P.NOME FROM ALUNO A


LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA

LEFT JOIN PROFESSOR P ON P.F UNCIONAL = AL.F UNCIONAL;


Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique
sua resposta.

Cardinalidade muitos-para-muitos (N:N). Podemos observar pela tabela intermediaria


ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e
PROFESSOR.

P). Dado o modelo de dados a seguir. Responda:

Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a
seguir?

select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto


join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo

join fornecedor on produto.cod_fornecedor = fornecedor.cod_fornecedor

join nota on produto.cod_produto = nota.cod_produto


order by cod_produto asc, cod_fornecedor asc, cod_tipo asc;

P). Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os
comandos abaixo:

Comando 1: SELECT * FROM tabela_x


Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x
Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2
seleciona a ordem das colunas.
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P). Considere um banco de dados que contenha uma tabela chamada ALUNO, que
contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7
caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode
ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é
o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a
nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9?
INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (‘123’, ‘Maria’, 8, 9);

P). Dada a tabela abaixo, escreva o comendo para excluir todos os alunos que tenham o
nome começado com a letra L.

DELETE FROM ALUNO WHERE NOME LIKE ‘L%’;

P). Dado o comando abaixo, indique o que esta errado.

INSERT INTO TABELA (CAMPO1, CAMPO2)


VALUES (VALOR1, VALOR2)
WHERE CAMPO1 = 100
Não se utiliza WHERE em comandos INSERT.

P). Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em
ordem alfabética.

SELECT * FROM ALUNO ORDER BY NOME ASC;

P). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela
chamada ALUNO. O que ocorre quando fazemos o comando: SELECT * FROM
ALUNO?
É exibido todos os campos da tabela aluno.
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P). Considere um banco de dados que contenha ta tabela ALUNO, que contenha 5 campos
da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e nãop ode
ser nulo; op campo NOME com 100 caracteres e também não pode ser nulo; e os campos
NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e
nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de
dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que
selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando
que os valores foram calculados corretamente,
UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2;
SELECT NOME, MEDIA FROM ALUNO;
P). O que pode ser considerado como “entregável” em um projeto de banco de dados?
XXXXXXXXXXX
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

MUTIPLA ESCOLHA

P) O comando correto para criar a tabela a seguir é:


TABELA_X
CAMPO_1
CAMPO_2

a) CREATE DATABASE TABELA_X


b) USE TABELA_X
c) DROP TABLE TABELXA_X
d) CREATE TABLE TABELA_X {
CAMPO_1 CHAR(1),
CAMPO_2 CHAR(2)
}
e) TRUNCATE TABLE TABELA_X

P) Uma relação está na terceira forma normal quando:


a) Os dados estão desmoralizados
b) Que não existem atributos que dependam de outros atributos que não sejam a
chave.
c) Que todos os dados estão no mesmo nível atômico.
d) Que todos os dados dependem unicamente da chave completa
e) Que nenhum atributo depende da chave, seja ela completa, seja ela parcial.

P) Consideremos uma tabela de produto e que um produto duplicado foi inserido nela.
Após levantamento, constatou-se que o produto errado é o de código X. Para remover esse
dado devemos:
a) Fazer um SELECT em PRODUTO usando WHERE COD_PRODUTO = X
b) Fazer um DELETE em PRODUTO usando WHERE COD_PRODUTO = X
c) Fazer um DELETE em PRODUTO sem WHERE
d) Fazer um UPDATE em PRODUTO usando WHERE COD_PRODUTO = X
e) Fazer um INSERT em PRODUTO usando WHERE COD_PROTUDO = X

P) Um projeto de banco de dados possui determinadas etapas para ser implementado


Assinale a alternativa que corresponda a tais etapas.
a) Modelo físico, Modelo Conceitual, Modelo Lógico e Levantamento.
b) Levantamento, Modelo Conceitual, Modelo Físico e Modelo Lógico.
c) Levantamento, Modelo Conceitual, Modelo Lógico e Modelo Físico.
d) Levantamento, Modelo Lógico, Modelo Físico e Modelo Conceitual.
e) Modelo Lógico, Modelo Físico, Modelo Conceitual, Levantamento
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P) Analise a tabela a seguir

Com base no esquema exposto, assinale a alternativa correta.

a) São derivados de um relacionamento de cardinalidade N – N no MER.


b) São derivados de um relacionamento de cardinalidade 1 – N no MER
c) São derivados de um relacionamento de cardinalidade 1 – 1 no MER
d) São derivados de um relacionamento de cardinalidade 0 – 1 no MER
e) São derivados de um relacionamento de cardinalidade 0 – N no MER

P) A cláusula WHERE pode ser usada junto a alguns comandos SQL. Quais são eles?
a) INSERT, DELETE, UPDATE
b) CREATE ALTER e DROP
c) SELECT, INSERT e DELETE
d) SELECT, DELETE e UPDATE
e) TUNCATE, DELETE e UPDATE

P) Considerando que em uma determinada empresa há funcionários que ganham de


R$1 .0 00 .00 a R$20.000,00, o comando a seguir retornara?

SELECT *
FROM FUNCIONARIOS
WHERE SALARIO >= 10.000.00
a) Todos os funcionários com salário maior que 10.000.00
b) Todos os funcionários com salário menor que 10.000.00
c) Todos os funcionários com salário igual a 10.000.00
d) Todos os funcionários com salário maior ou igual a 10.000.00
e) Nenhum funcionário

P) Dado o comando a seguir, qual será o resultado?


DELETE FROM TABELA
WHERE CAMPO = ‘X’
a) Todos os registros da tabela serão eliminados.
b) Todos os registros da tabela serão atualizados
c) Apenas será eliminado o registro em que o CAMPO for igual a X
d) Apenas será atualizado o registro em que CAMPO for igual a X
e) Apenas será selecionado o registro em que o CAMPO for igual a X.
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P) Para excluir uma coluna de uma tabela, utilizamos o comando:


a) DROP TABLE
b) CREATE TABLE
c) DROP COLUM
d) ALTER TABLE
DROP COLUMN
e) ALTER TABLE

P) Em um modelo Entidade Relacionamento (MER), as entidades, os atributos e as relação


são identificadas, respectivamente por:
a) Retângulo, elipse e losango
b) Elipse, losango e retângulo.
c) Losango, retângulo e elipse
d) Retângulo, losango e elipse
e) Losango, elipse e retângulo.

P) Todos os bancos de dados possuem um banco de dados interno que armazena as suas
informações. A esses dados armazenados damos o nome de:
a) Hyperdados
b) Megadados
c) Superdados
d) Metadados
e) Ultradados

P) Analise o comando a seguir:


SELECT *
FROM TABELA
WHERE CAMPO_1 = 10 OR CAMPO_2 = 20.
De acordo com o esquema exposto, assinale a alternativa correta
a) A consulta só retornará os dados se as duas condições forem verdadeiras
b) A consulta só retornará os dados se nenhuma das duas condições forem verdadeiras
c) A consulta só retornara os dados se a primeira das duas condições for verdadeira.
d) A consulta só retornara dados se a segunda das duas condições for verdadeira
e) A consulta retornara os dados se qualquer uma das condições forem verdadeiras.
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P) Considere a tabela e o comando a seguir:

INSERT INTO TELEFONE


(TELEFONE, DDD, OPERADORA)
VALUES
(“11”, “987654321”, “XX”)
Qual será o problema com o comando em questão
a) Não dará erro
b) Porque estou gravando um número no lugar de um texto.
c) Porque a orde m dos valores está diferente da ordem dos campos.
d) Porque 987654321 não é um número valido.
e) Porque a XX não é uma operadora válida.

P) O SQLite, apesar de ser um banco de dados relacional, não pode ser implementado em
arquitetura cliente-servidor como o SQL Server ou o Oracle. Por que?
a) Não é robusto o suficiente
b) Possui limitações de capacidade
c) Porque é uma biblioteca desenvolvida em C para ser embarcado em um software
durante sua fase de desenvolvimento
d) Porque pertence a Microsoft, e não pode ser instalado em bases UNIX/LINUX
e) Porque foi feito para bases UNIX/LINUX, e não pode ser instalado em servidores
Windows.

P) Pensando em promoções para seus clientes, o Sr. Manoel resolveu adicionar um novo
campo na tabela de cliente, a data de nascimento (DT_NASCIMENTO). Para efetuar esse
campo, qual comando deve ser adicionado?
a) ALTER TABLE CLIENTE
ADD DT_NASCIMENTO DATE
b) ALTER TABLE CLIENTE
ADD CONSTRAINT DT_NASCIMENTO
c) ALTER TABLE CLIENTE
ADD DT_NASCIMENTO DATETIME.
d) ALTER TABLE CLIENTE
ADD NASCIMENTO INT
e) DROP TABLE CLIENTE
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P) Considere o esquema a seguir:

Para obter uma consulta que retorne à quantidade de telefones por operadora
(independente do DDD), qual o comando que deve ser utilizado?
a) SELECT OPERADORA
, COUNT(TELEFONE) AS QTD
FROM TELEFONE
GROUP BY OPERADORA
b) SELECT OPERADORA
, COUNT(TELEFONE) AS QTD
FROM TELEFONE
c) SELECT OPERADORA
, SUM(TELEFONE) AS QTD
FROM TELEFONE
GROUP BY OPERADORA
d) SELECT OPERADORA
, MAX(TELEFONE) AS QTD
FROM TELEFONE
GROUP BY OPERADORA
e) SELECT OPERADORA
, MAX(TELEFONE) AS QTD
FROM TELEFONE
GROUP BY OPERADORA

P) Ferramentas CASE existem para facilitar a vida dos DBAs e dos analistas de bancos de
dados. Dentre suas funcionalidades assinale a alternativa incorreta.
a) Provêm documentação do projeto de Banco de Dados
b) Algumas ferramentas disponibilizam um dicionário de dados (metadados) sem
necessidade de um modelo ser gerado no Banco de Dados
c) Constroem modelos de dados sem interferência do usuário/operador
d) Constroem bases de dados sem a necessidade de digitar nenhum código SQL.
e) Agilizam o trabalho de construção do modelo de dados para analista de sistema.

P) Sobre as chaves de um banco de dados, assinale a alternativa incorreta


a) Uma chave candidata pode vir a se tornar uma chave primaria
b) Uma chave estrangeira (FK) é uma chave primária (PK) que vem de outra tabela.
c) Uma chave composta é uma chave que possui mais de um atributo.
d) Uma chave estrangeira (FK) pode compor uma chave primaria (PK)
e) A chave estrangeira nasce dentro da própria tabela.
Impresso por Felipe Lordão, E-mail felipelordao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos
autorais e não pode ser reproduzido ou repassado para terceiros. 22/10/2022 09:40:15

P) Podemos dizer que um banco de dados está devidamente normalizado quando:


a) Foi aplicada a 1ª Forma Normal
b) Foi aplicada a 1ª e 2ª Forma Normal
c) Foi aplicada a 1ª, 2ª e 3ª Forma Normal
d) Foi aplicada a 2ª e 3ª Forma Normal
e) Não foi aplicada qualquer Forma Normal

P) Dada uma tabela chamada PESSOA, qual comando devemos utilizar para exclui-la?
a) DELETE FROM PESSOA
b) DROP TABLE PESSOA
c) TRUNCATE TABLE PESSOA
d) CREATE TABLE PESSOA
e) ALTER TABLE PESSOA

P) Dado o comando a seguir, assinale a alternativa que destaca o que ele faz.
ALTER TABLE PRODUTO
ADD CONSTRAINT FK_TIPO FOREIGN KEY (COD_TIPO)
a) Adiciona uma chave estrangeira na tabela PRODUTO
b) Excluir uma chave estrangeira na tabela PRODUTO
c) Adiciona uma chave primaria na tabela PRODUTO
d) Exclui uma chave primaria na tabela PRODUTO
e) Adiciona uma coluna na tabela PRODUTO

P) O que acontece se o comando a seguir for executado?

UPDATE TABLE X
SET COLUNA_1 = 100
a) Um registro será atualizado
b) Dois registros serão atualizados
c) Nenhum registro será atualizado
d) Todos os registros da tabela serão atualizados
e) Todos os registros da tabela serão excluídos.

P). Consideremos que estamos trabalhando com duas tabelas: A e B. Para que minha
consulta retorne todos os dados da tabela A mesmo que não exista correspondência na
tabela B, devemos usar:
a) JOIN
b) INNER JOIN
c) LEFT JOIN de A para B
d) LEFT JOIN de B para A
e) RIGHT JOIN de A para B

Você também pode gostar