Questões de Concurso sobre PL/SQL

 
 
Disciplina
Assunto 1
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
205 questões encontradas
Questões por página
20
Mais recentes
 

Para o controle de insumos em um canteiro de obras, o engenheiro de suprimentos utiliza um banco de dados relacional chamado OBRA, que já está instalado e ativo. Uma das tabelas desse banco, chamada MATERIAIS, já foi criada e está preenchida com três campos: material, categoria e preco. O engenheiro deseja listar o material e o preço de todos os materiais cuja categoria seja AÇO, a fim de analisar os custos dos insumos utilizados na estrutura da obra.


Qual comando SQL ele deve utilizar para obter essa lista?


A

SELECT categoria, preco FROM MATERIAIS WHERE material = 'AÇO';


B

SELECT MATERIAIS, preco WHERE categoria = 'AÇO';


C

SELECT MATERIAIS, preco FROM material WHERE categoria = 'AÇO';


D

SELECT material, preco FROM MATERIAIS;


E

SELECT material, preco FROM MATERIAIS WHERE categoria = 'AÇO';

Uma visão (view) é uma tabela virtual baseada no resultado de uma consulta SQL, não armazena dados fisicamente e apresenta informações de uma ou mais tabelas de forma organizada e reutilizável.


C

Certo


E

Errado

Em um ambiente corporativo que utiliza simultaneamente Oracle Database e Microsoft SQL Server, a equipe de administração de dados avaliou a migração de rotinas armazenadas entre os dois SGBDs. Durante a análise, foram comparados objetos programáveis, tratamento de exceções, controle transacional e diferenças entre PL/SQL e Transact-SQL. Um dos analistas afirmou que, por ambos os produtos serem SGBDs relacionais compatíveis com SQL, procedures, funções e gatilhos poderiam ser migrados sem reescrita substancial, desde que as tabelas mantivessem os mesmos nomes e tipos equivalentes. Diante do exposto, analise as sentenças a seguir:


I- Rotinas escritas em Oracle PL/SQL podem ser executadas diretamente no Microsoft SQL Server, pois PL/SQL e Transact-SQL são implementações equivalentes do padrão SQL/PSM, diferindo apenas na nomenclatura de comandos de criação de objetos.


PORQUE


II- Oracle Database e Microsoft SQL Server são SGBDs relacionais que suportam objetos programáveis no banco de dados, como procedimentos armazenados, funções, gatilhos e mecanismos de controle transacional, mas possuem dialetos, tipos, funções internas, tratamento de exceções e particularidades semânticas próprias.


Analisadas as sentenças, é CORRETO afirmar que:


A

As duas sentenças são verdadeiras, e a segunda é uma justificativa correta da primeira.


B

As duas sentenças são verdadeiras, mas a segunda não é uma justificativa correta da primeira.


C

A primeira sentença é verdadeira, e a segunda, falsa.


D

A primeira sentença é falsa, e a segunda, verdadeira.

Considere as tabelas de banco de dados criadas com o código em SQL:


Imagem associada para resolução da questão


I. A palavra-chave CASCADE diz que, se uma linha da tabela Pedido for excluída, todas as linhas de ItensPedido que se referem a ela também serão excluídas.

Il. A exclusão de um Produto que possui uma linha correspondente em ItensPedido é proibida.

III. Se a cláusula ON UPDATE especificasse CASCADE e a coluna idProduto de uma linha da tabela Produto fosse atualizada, essa atualização também seria executada em cada linha da tabela ItensPedido que se referisse à linha da tabela Produto atualizada.


Está CORRETO o que se afirma em:



A

Nenhuma das afirmativas.


B

l e Il, apenas.


C

Il e Ill, apenas.


D

l e Ill, apenas.


E

Todas as afirmativas.

Qual é a saída apresentada após executar o seguinte trecho de código escrito em PL/SQL?


SET SERVEROUTPUT ON;

DECLARE

V_NUMERO NUMBER(5,2):= 123.45;

V_STRING VARCHAR2(10);

BEGIN

V_STRING:= TO_CHAR(V_NUMERO, 'FM00000.000');

DBMS_OUTPUT.PUT_LINE(V_STRING);

END;


A

123.45


B

123.450


C

00123.450


D

FM00123.450


E

Apresenta erro de sintaxe

Qual comando SQL deve ser utilizado por um analista de TI especializado em bancos de dados para especificar um tipo de ação a ser tomada quando certos eventos ocorrem ou quando certas condições são satisfeitas?


A

EXECUTE TASK.


B

DO ACTION.


C

CREATE TRIGGER.


D

PERFORM COMMAND.

O retorno do comando apresentado será necessariamente uma lista de todos os itens da tabela Produtos, ordenados pelo campo Preco, do menor valor para o maior valor.


C

Certo


E

Errado

Qual é a saída apresentada após executar o seguinte trecho de código escrito em PL/SQL?


SET SERVEROUTPUT ON;

DECLARE

V_DATE1 DATE:= TO_DATE('2025-03-27', 'YYYY-MM-DD');

V_DATE2 DATE:= TO_DATE('2025-07-05', 'YYYY-MM-DD');

V_NUMBER NUMBER(2);

BEGIN

V_NUMBER:= MONTHS_BETWEEN(V_DATE1, V_DATE2);

DBMS_OUTPUT.PUT_LINE(V_NUMBER);

END;


A

-4


B

-3


C

3


D

4


E

Apresenta erro de sintaxe

Considerando que 07/02/2025 é uma sexta-feira, qual é a saída apresentada após executar o seguinte trecho de código escrito em PL/SQL?


SET SERVEROUTPUT ON;

DECLARE

V_DATE DATE:= TO_DATE('07-02-2025 00:00:00', 'DD-MM-YYYY HH24:MI:SS');

V_NUMBER NUMBER(2);

BEGIN

V_NUMBER:= TO_CHAR(V_DATE, 'W');

DBMS_OUTPUT.PUT_LINE(V_NUMBER);

END;


A

1


B

2


C

5


D

6


E

Apresenta erro de sintaxe

Considere o seguinte trecho de código em PL/SQL:


Imagem associada para resolução da questão


Ao ser executado em condições ideais, este comando


A

erra ao calcular o tempo de serviço, pois deveria ter sido usado o EXTRACT (YEAR FROM SYSDATE) - EXTRACT(YEAR FROM data_ admissao), uma vez que EXTRACT já retorna a diferença correta de anos e meses.


B

erra ao calcular o tempo de serviço, pois deveria ter sido usado DATEDIFF (YEAR, data_admissao, SYSDATE), que retorna diretamente os anos completos.


C

calcula o tempo de serviço dos funcionários ativos somando diretamente os meses obtidos pela função MONTHS_BETWEEN, sem necessidade de divisão ou modulação.


D

calcula o tempo de serviço dos funcionários ativos, obtendo a diferença total de meses entre a data atual SYSDATE e data_admissao, convertendo os valores em anos e meses utilizando FLOOR e MOD.


E

erra ao calcular o tempo de serviço, pois deveria ter sido utilizado apenas ROUND(MONTHS_BETWEEN(SYSDATE, data_admissao) / 12), pois não há necessidade de calcular separadamente os anos e meses.

Assinale a alternativa que apresenta APENAS comandos válidos em SQL/PLSQL:


A

PRINT, INPUT, GOTO, LOOP.


B

SELECT, INSERT, UPDATE, DELETE.


C

STYLE, DIV, HREF, TITLE.


D

FORWARD, BACK, REFRESH, CLOSE.

Em bancos de dados relacionais, o objeto que agrupa um conjunto de comandos SQL armazenados no servidor, podendo receber parâmetros e ser executado múltiplas vezes, é denominado


A

View.


B

Index.


C

Stored Procedure.


D

Cursor.


E

Schema.

PL/SQL é uma extensão da linguagem SQL que integra SGBDs Oracle. O recurso utilizado para manipular o conjunto de resultados de uma instrução SELECT na linguagem PL/SQL, podendo ser implícito ou explícito, é chamado de:


A

Vetor.


B

Pacote.


C

Bloco.


D

Cursor.

Com relação a linguagens procedurais PL/SQL e T-SQL, marque a alternativa correta.


A

O PL/SQL ео T-SQL são linguagens procedurais que se baseiam no NoSQL.


B

São linguagens idênticas de fabricantes (desenvolvedores) diferentes.


C

O PL/SQL permite o desenvolvimento de procedures e funções, todavia esta funcionalidade não é suportada pelo T-SQL.


D

PL/SQL é uma linguagem procedural usada no Oracle enquanto o T-SQL é usada no MS-SQL Server.


E

OT-SQL permite o desenvolvimento de procedures e funções, todavia esta funcionalidade não é suportada pelo PL/SQL.

Um analista de sistemas da Prefeitura Municipal de Nova Iguaçu precisa gerar um relatório de arrecadação fiscal. Para isso, ele escreve a seguinte consulta em PL/SQL para calcular o total de impostos pagos pelos contribuintes:


Imagem associada para resolução da questão


Ao revisar o código, foram identificados erros conceituais que podem comprometer sua execução. Qual das alternativas contém uma afirmação INCORRETA sobre o código PL/SQL apresentado?


A

A variável v_total precisa ser declarada antes do bloco BEGIN.


B

O comando SELECT INTO pode falhar se a consulta retornar múltiplas linhas.


C

A variável v_total pode armazenar qualquer quantidade de valores retornados pelo SUM().


D

O pacote DBMS_OUTPUT precisa ser ativado com SET SERVEROUTPUT ON para exibir a saída.

Qual é a saída apresentada após executar o seguinte trecho de código escrito em PL/SQL?


SET SERVEROUTPUT ON;

DECLARE

V_DATE DATE:= TO_DATE('2025/08/01 00:00:00', 'YYYY/DD/MM HH24:MI:SS');

V_NUMBER NUMBER(2);

BEGIN

V_NUMBER:= TO_CHAR(LPAD(EXTRACT(DAY FROM V_DATE), 2, '0'));

DBMS_OUTPUT.PUT_LINE(V_NUMBER);

END;


A

8


B

08


C

80


D

NULL


E

Apresenta erro de sintaxe

Ano: 2025
Prova: CESPE/CEBRASPE - PCDF - Gestor de Apoio - Área: Analista de Informática Banco de Dados . - 2025

No Oracle, o uso de PL/SQL é ideal para operações avançadas de controle e análise de segurança, pois permite que se criem consultas complexas, que incluem laços de repetição e tratamento de exceções.


C

Certo


E

Errado

 
Ir para a página:
OK
 
Gerar simulado