Baixe o app para aproveitar ainda mais
Prévia do material em texto
1a Questão (Ref.: 201409080082) Pontos: 0,1 / 0,1 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), 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 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)); Gabarito Comentado. 2a Questão (Ref.: 201408898213) Pontos: 0,1 / 0,1 A constraint Foreign Key possui no SQL Ansi quais regras? On Delete Set Null / On Delete Restrict / On Update Set Null / On Update Delete On Delete Set Null / On Delete Set Default / On Update Set Null / On Update Set Default On Delete Cascade / On Delete Set Null / On Update Cascade / On Update Set Null On Delete Cascade / On Delete Restrict / On Delete Set Null / On Update Cascade / On Update Delete / On Update Set Null On Delete Cascade / On Delete Restrict / On Update Cascade / On Update Delete 3a Questão (Ref.: 201408577936) Pontos: 0,1 / 0,1 Qual a ordem correta dos argumentos DQL-SELECT: SELECT - FROM - WHERE - JOIN - GROUP BY - HAVING - ORDER BY SELECT - FROM - JOIN - WHERE - HAVING - GROUP BY - ORDER BY SELECT - FROM - JOIN - WHERE - GROUP BY - ORDER BY - HAVING SELECT - FROM - JOIN - WHERE - GROUP BY - HAVING - ORDER BY SELECT - FROM - WHERE - JOIN - HAVING - GROUP BY - ORDER BY 4a Questão (Ref.: 201408421905) Pontos: 0,0 / 0,1 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 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, 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) ) Gabarito Comentado. Gabarito Comentado. 5a Questão (Ref.: 201408914339) Pontos: 0,1 / 0,1 São comandos da categoria de Definição de Dados (DDL): INSERT / UPDATE / DELETE GRANT / REVOKE SELECT COMMIT / ROLLBACK CREATE / ALTER / DROP 1a Questão (Ref.: 201408577927) Pontos: 0,1 / 0,1 Qual comando: I. Garante que os dados sejam persistidos com sucesso no banco; II. Descarta a transação. I. Insert; II. Cancel; I. Grant; II. Revoke; I. Commit; II. Rollback; I. Rollback; II. Commit; I. Insert; e II. Delete; 2a Questão (Ref.: 201408893767) Pontos: 0,0 / 0,1 É sinônimo de uma instância de uma entidade em um banco de dados Informação Dado Atributo Visão Tupla 3a Questão (Ref.: 201408565580) Pontos: 0,1 / 0,1 Quando dois conjuntos de dados são concatenados de acordo com uma determinada condição, representa o resultado da operação relacional: junção projeção união restrição intersecção 4a Questão (Ref.: 201408432478) Pontos: 0,1 / 0,1 Qual das consultas abaixo retorna o nome e a placa de todos os veículos? SELECT c.cpf, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf WHERE v.placa; SELECT c.nome FROM Veiculo v INNER JOIN Cliente c ON cpf = cpf; SELECT v.placa, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf; SELECT v.placa, c.nome FROM Cliente INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf; SELECT placa FROM Veiculo INNER JOIN Cliente ON Cliente_cpf = cpf; 5a Questão (Ref.: 201409091680) Pontos: 0,1 / 0,1 A linguagem SQL possui comandos de defnição de dados (DDL - Data Defnition Language), dos quais faz parte o seguinte comando: Delete Update Alter Insert Select 1a Questão (Ref.: 201409092669) Pontos: 0,1 / 0,1 Considere a seguinte tabela de um banco de dados: PESSOA { pes_codigo, pes_nome, pes_email, pes_rg, pes_idade, pes_codigo_casado } Qual das instruções abaixo permite recuperar os campos nome e e-mail da pessoa e o nome e e-mail do seu cônjuge. Select p.pes_nome, p.pes_email, c.pes_nome, c.pes_email From pessoa p, pessoa c Where p.pes_codigo = c.pes_codigo_conjuge Select p.pes_nome, p.pes_email, c.pes_nome, c.pes_email From pessoa p inner join pessoa c using (pes_codigo) Select p.pes_nome, p.pes_email, c.pes_nome, c.pes_email From pessoa p, pessoa c Where pes_codigo = pes_codigo_conjuge Select pes_nome, pes_email, pes_nome, pes_email From pessoa inner join pessoa using (pes_codigo) Select p.pes_nome as Nome, p.pes_email as Email c.pes_nome as Conjuge c.pes_email as EmailConjuge From pessoa p inner join from pessoa c on (p.pes_codigo = c.pes_codigo_conjuge) 2a Questão (Ref.: 201408913297) Pontos: 0,1 / 0,1 O comando SQL que garante a atomicidade de uma transação é: REVOKE ROOLBACK COMMIT USER GRANT Gabarito Comentado. 3a Questão (Ref.: 201409091614) Pontos: 0,1 / 0,1 O comando SQL para inserir todos os registros da tabela T1, na tabela T2, é: INSERT INTO T2 SELECT * FROM T1 INSERT INTO T2 SELECT FROM T1 INSERT INTO T2 SELECT ALL T1 INSERT INTO T2 SELECT MAX FROM T1 4a Questão (Ref.: 201408578490) Pontos: 0,1 / 0,1 create table Pessoa( Id int not null identity (1,1) primary key, Nome varchar(30), Idade int, Sexo char(1) ) create table Parentesco( PaiMaeint not null , FilhoFilhaint not null ) Que comando SQL incluirá a informação de que João é pai de Joana? INSERT INTO Parentesco VALUES SELECT F.Id,P.Id FROM Pessoa AS P , Pessoa AS F WHERE P.Nome='João' AND F.Nome='Joana' INSERT INTO Parentesco VALUES SELECT P.Id,F.Id FROM Pessoa AS P , Pessoa AS F WHERE P.Nome='João' AND F.Nome='Joana' INSERT INTO Parentesco SELECT P.Id,F.Id FROM Pessoa AS P , Pessoa AS F WHERE P.Nome='João' AND F.Nome='Joana'INSERT INTO Parentesco SELECT P.Id,F.Id FROM Pessoa AS P , Pessoa AS F WHERE P.Nome='Joana' AND F.Nome='João' INSERT INTO Parentesco SELECT F.Id,P.Id FROM Pessoa AS P , Pessoa AS F WHERE P.Nome='João' AND F.Nome='Joana' 5a Questão (Ref.: 201408422002) Pontos: 0,1 / 0,1 Considere a relação: ALUNO (matrícula, nome, endereço, estado, cidade, cep, datadeingresso, coeficiente_de_rendimento) A consulta SQL para listar os alunos com maior e menor coefiente de rendimento nos estado de SP, RJ e MG é: SELECT MAX(COEFICIENTE_DE_RENDIMENTO), MIN(COEFICIENTE_DE_RENDIMENTO) FROM ALUNO; Nenhuma das respostas acima SELECT MAX(COEFICIENTE_DE_RENDIMENTO), MIN(COEFICIENTE_DE_RENDIMENTO) FROM ALUNO WHERE ESTADO = 'SP' OR ESTADO = 'RJ' OR ESTADO = 'MG'; SELECT MAX(COEFICIENTE_DE_RENDIMENTO), MIN(COEFICIENTE_DE_RENDIMENTO) FROM ALUNO WHERE ESTADO = 'SP' AND ESTADO = 'RJ' AND ESTADO = 'MG'; SELECT MAX, MIN(COEFICIENTE_DE_RENDIMENTO) FROM ALUNO WHERE ESTADO = 'SP' OR ESTADO = 'RJ' OR ESTADO = 'MG'; WHERE departamento = d.reg No script apresentado aparece a palavra departamento duas vezes. Desta forma, pode-se dizer que se referem, respectivamente: linha, coluna tabela, coluna tabela, linha coluna, tabela tabela, tabela 3a Questão (Ref.: 201408422103) Pontos: 0,1 / 0,1 De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar o menor salário pago aos Empregados Agrupados por Departamento. SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MINIMO(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID; SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID; 4a Questão (Ref.: 201408574013) Pontos: 0,1 / 0,1 ¿O SGBD possui níveis de abstração com a finalidade de esconder da maioria dos usuários que estão envolvidos com os processos computacionais as complexas estruturas de armazenamento de dados, simplificando assim a interação dos usuários¿. Figura: Níveis de Abstração Com base nos conceitos dos níveis de abstração do SGBD, assinale as questões abaixo, indicando as afirmações corretas. Nível conceitual: Descreve, em alto nível e com uso de estruturas mais simples, apenas as partes do banco de dados que são de interesse do usuário. Simplifica a interação com o usuário, filtrando as informações de seu interesse e relevância. Nível externo ou visual : Faz uma descrição lógica de todo banco de dados. Apresenta de maneira simples e completa, quais dados estão armazenados no banco de dados, bem como as relações entre eles. Nível físico ou interno - Descreve como os dados estão realmente armazenados, detalhando as complexas estruturas de dados de baixo nível. 5a Questão (Ref.: 201409092688) Pontos: 0,1 / 0,1 Dado o esquema de banco de dados relacional para um banco de dados - BIBLIOTECA LIVRO { liv_codigo, liv_titulo, liv_datacadastro, edi_codigo } LIVRO_AUTOR { liv_codigo, nome_autor } EDITORA { edi_codigo, edi_nome, edi_endereco, edi_telefone } LIVRO_COPIAS { liv_codigo, uni_codigo, quant_copia } LIVRO_EMPRESTIMO { liv_codigo, uni_codigo, usu_numero_cartao, data_emprestimo, data_devolucao } UNIDADE_BIBLIOTECA { uni_codigo, uni_nome, uni_endereco } USUARIO { usu_numero_cartao, usu_nome, usu_email, usu_celular } Assinale a alternativa que permita recuperar o código, título e nome da editora de todos os livros que foram emprestados no ano de 2015. Select livro.liv_codigo as Código, livro.liv_titulo as Título, editora.edi_nome as Editora From livro, editora, livro_emprestimo Where livro.liv_codigo = livro_emprestimo.liv_codigo or livro.edi_codigo = editora.edi_codigo or livro_emprestimo.data_emprestimo <= 2015-01-01'andlivroemprestim⊙dataemprestimo='2015-31-12'orderbylivr⊙livtito̲; Select livro.liv_codigo as Código, livro.liv_titulo as Título, editora.edi_nome as Editora From livro, editora, livro_emprestimo Inner join liv_codigo = livro_emprestimo.liv_codigo and livro.edi_codigo = editora.edi_codigo and livro_emprestimo.data_emprestimo >= '2015-01-01' and livro_emprestimo.data_emprestimo <= '2015-31-12' order by livro.liv_titulo; Select livro.liv_codigo as Codigo, livro.liv_titulo as Título, editora.edi_nome as Editora From livro, editora, livro_emprestimo Where livro.liv_codigo = livro_emprestimo.liv_codigo and livro.edi_codigo = editora.edi_codigo and livro_emprestimo.data_emprestimo >= '2015-01-01' and livro_emprestimo.data_emprestimo <= '2015-31-12' order by livro.liv_titulo; Select livro.liv_codigo as Código, livro.liv_titulo as Título, editora.edi_nome as Editora From livro, editora, livro_emprestimo Where livro.liv_codigo = livro_emprestimo.liv_codigo and livro.edi_codigo = editora.edi_codigo and livro_emprestimo.data_emprestimo <= '2015-01-01' and livro_emprestimo.data_emprestimo >= '2015-31-12' order by livro.liv_titulo; Select livro.liv_codigo as Código, livro.liv_titulo as Título, editora.edi_nome as Editora From livro inner join livro_emprestimo on(livro.liv_codigo = livro_emprestimo.liv_codigo) where livro_emprestimo.data_emprestimo >= '2015-01-01' and livro_emprestimo.data_emprestimo <= '2015-31-12' order by livro.liv_titulo;
Compartilhar