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
 

Analise o comando MySQL a seguir.


CREATE TRIGGER XXXXX AFTER INSERT ON VENDA

FOR EACH ROW

BEGIN

UPDATE ESTOQUE

SET Quantidade = Quantidade - NEW.Quantidade

WHERE CodProduto = NEW.CodProduto;

END


Esse comando cria um trigger (gatilho) que


A

atualiza a quantidade em estoque de todos os produtos, toda vez que há uma inclusão na tabela VENDA.


B

atualiza a quantidade em estoque de um produto, toda vez que há uma inclusão na tabela VENDA.


C

atualiza os dados da tabela ESTOQUE, toda vez que ocorre um erro de transação que envolva a tabela VENDA.


D

inclui um registro na tabela ESTOQUE, toda vez que há uma venda.


E

inclui um registro na tabela VENDA, toda vez que há uma transação de UPDATE na tabela VENDA.

A palavra-chave %TYPE pode ser usada, em PL/SQL, na especificação do tipo de uma variável, para que ela use o mesmo tipo de coluna especificado em uma tabela.


C

Certo


E

Errado

Em bancos de dados, um recurso é um procedimento armazenado, chamado automaticamente, sempre que ocorre um evento especial. Por exemplo, um acionador pode ser chamado quando uma linha é inserida em uma tabela especificada ou quando determinadas colunas da tabela estão sendo atualizadas. Geralmente essas ações que acionam esse recurso são alterações nas tabelas por meio de operações de inserção, exclusão e atualização de dados. Esse recurso é denominado:


A

trigger


B

commit


C

rollback


D

deadlock

No contexto do mecanismo de triggers do PostgreSQL, analise as afirmativas a seguir.


I. Na especificação das ações de um trigger, os valores das colunas sendo afetadas são referenciados pelos prefixos “.NEW” e “.OLD”.

II. Triggers podem acionados para cada uma das linhas afetadas numa operação. Não há acionamento em bloco para o conjunto de linhas afetadas por um comando.

III. BEFORE, AFTER e INSTEAD OF são termos que determinam quando as ações de um trigger serão executadas.


Estão corretas somente as afirmativas


A

I e II.


B

I e III.


C

I.


D

II e III.


E

II.

Um colega de trabalho lhe pediu ajuda em um problema envolvendo PL/SQL. Segundo consta, o código não está compilando e não se sabe a razão. O código é:


begin

IF SYSDATE > TO_DATE ('05-JUL-2022',

'DD-MON-YYYY') THEN

dbms_output.put_line('Um ano muito diferente');

ENDIF;

end;

/


Por esse caminho, assinale a alternativa que corretamente indica a solução que você deve oferecer ao problema exposto pelo colega:


A

A sintaxe correta da função utilizada é putline() e não put_line().


B

As palavras-chave IF e THEN precisam estar em linhas diferentes.


C

Todas as palavras-chave, como "begin" e "end" devem estar em caixa alta, visto que PL/SQL é uma linguagem case-sensitive.


D

A sintaxe correta para término da estrutura de seleção IF é END IF e não ENDIF.


E

Não se pode comparar datas dentro de um IF.

Em SQL, com o comando DELETE, é possível excluir valores apenas em atributos específicos.


C

Certo


E

Errado

Um recurso muito utilizado em banco de dados é o trigger, que permite ao sistema executar determinadas ações predefinidas, caso o usuário execute algum evento no banco; a desvantagem desse tipo de objeto é que não é possível especificar um procedimento armazenado (stored procedure) em um trigger.


C

Certo


E

Errado

Avalie o código PL/SQL.


Imagem associada para resolução da questão


Fonte: https://www.oracle.com/br/technical-resources/articles/creating-managing-user-roles.html


A partir da análise do código é possível afirmar, EXCETO:


A

Este código cria usuários do tipo local users.


B

Para criar usuários do tipo local users, o procedimento é o mesmo tal como era realizado no banco de dados Oracle até a versão 11G.


C

Por padrão, quando se está conectado em um PDB, ele irá utilizar a cláusula CONTAINER=CURRENT.


D

Quando se está conectado em um PDB, ele irá utilizar a cláusula CONTAINER=CURRENT, mas não é um padrão.


E

Local users são um tipo de usuário que estão presentes em apenas um PDB específico.

Considerando a linguagem PL/SQL do sistema gerenciador de bancos de dados Oracle (v. 21), assinale a alternativa que apresenta uma representação correta para um comentário.


A

/% comentário %/


B

/ comentário /


C

_ _ comentário _ _


D

/- comentário -/


E

-- comentário

Para ‘chamar’ suas próprias funções no Oracle PL/SQL deve-se aplicar a mesma ação empregada para chamar qualquer função interna de um banco de dados. É possível obter informações sobre suas funções a partir da visão:


A

text_lenght


B

employees_view


C

user_procedures


D

cheap_products_view

A linguagem PL/SQL (Procedural Language extensions to SQL) possibilita o desenvolvimento de programas que são compilados, armazenados e executados dentro do servidor de banco de dados. Foi desenvolvida para ser utilizada no seguinte SGBD:


A

IBM DB2.


B

Oracle.


C

SQL Server.


D

Postgre.


E

My SQL.

No contexto de banco de dados, sobre os recursos de procedimentos armazenados (stored procedures) e gatilhos (triggers), julgue as afirmações.


I. Um gatilho é similar a uma função, inclusive pelo fato de retornar um valor.

II. A execução de um procedimento armazenado é feita por meio de chamada ao seu nome, podendo ser dentro de outro procedimento.

III. Um gatilho é um procedimento armazenado que é ativado por evento e executa uma ou mais ações se a condição for atendida.

IV. Transações de commit e rollback não podem ser executadas por um procedimento armazenado.

V. O uso de procedimento armazenado diminui o tráfego na rede em um ambiente cliente/servidor, pois um grupo de comandos SQL ficam armazenados no próprio banco de dados.


É CORRETO afirmar que:


A

apenas I e II estão corretas.


B

apenas I, II e III estão corretas.


C

apenas II, III e V estão corretas.


D

apenas III e IV estão corretas.


E

apenas IV e V estão corretas.

Seja um banco de dados para uma árvore genealógica simples, composto de uma única relação, conforme definido a seguir pelo comando CREATE TABLE da SQL.


Os atributos id_mae e id_pai são chaves estrangeiras que referenciam a mãe e o pai de uma pessoa, respectivamente.


CREATE TABLE pessoa (

id INT NOT NULL,

nome VARCHAR(40) NOT NULL,

id_mae INT NULL,

id_pai INT NULL,

PRIMARY KEY (id),

FOREIGN KEY(id_mae) REFERENCES pessoa(id),

FOREIGN KEY(id_pai) REFERENCES pessoa(id) )


A expressão SQL que segue foi escrita para obter informação do banco de dados:


SELECT * FROM pessoa F

WHERE EXISTS (

SELECT * FROM pessoa P

WHERE P.id_pai = F.id_pai AND F.id <> P.id)

OR EXISTS ( SELECT * FROM pessoa P

WHERE P.id_mae = F.id_mae AND F.id <> P.id)



Considerando que o símbolo '<>' representa um operador de comparação que significa 'diferente de', e a expressão 'compartilhar um parente' denota 'ter um parente em comum' (por exemplo, se duas pessoas 'compartilham um primo', significa que este é primo de ambas as pessoas), então a execução da expressão SQL dada resulta nas:


A

pessoas que compartilham o pai e a mãe com pelo menos uma outra pessoa.


B

pessoas que compartilham o pai ou a mãe com pelo menos uma outra pessoa.


C

pessoas que compartilham o avô paterno e a avó materna com pelo menos uma outra pessoa.


D

pessoas que compartilham o avô paterno ou a avó materna com pelo menos uma outra pessoa.

Infere-se do código acima que p_RENDIMENTO é uma constante, pois foi utilizado o atributo %type, que tem como função única declarar as constantes como sendo do mesmo tipo de dado da coluna da tabela referenciada.


C

Certo


E

Errado

Analise as afirmativas abaixo sobre Stored Procedure (SP) em bancos de dados Oracle 11g.


  1. Uma SP pode compor o bloco de construção de uma query PL/SQL maior.
  2. SP aceita parâmetros de quantidade variável, conforme definido na especificação da SP.
  3. Uma SP pode realizar modificações em uma ou mais tabelas.
  4. Uma SP pode conter N instruções.


Assinale a alternativa que indica todas as afirmativas corretas.


A

São corretas apenas as afirmativas 3 e 4.


B

São corretas apenas as afirmativas 1, 2 e 3.


C

São corretas apenas as afirmativas 1, 3 e 4.


D

São corretas apenas as afirmativas 2, 3 e 4.


E

São corretas as afirmativas 1, 2, 3 e 4.

No bloco PL/SQL, há um erro grave de lógica, pois as condições p_RENDIMENTO < 5000 e p_RENDIMENTO < 7000 foram definidas equivocadamente. Para que o código funcione corretamente, elas devem ser substituídas, respectivamente, por p_RENDIMENTO >= 2000 AND < 5000 e p_RENDIMENTO >=5000 AND < 7000.


C

Certo


E

Errado

Em um comando do PL/SQL, é possível inserir comentários que ocupem várias linhas. Nesse caso, os delimitadores de início e fim desse tipo de comentário são, correta e respectivamente,


A

// e \\.


B

|| e ||.


C

<= e =>.


D

/∗ e ∗/.


E

/# e #/.

Considerando-se o framework EAP, o PEAP (protected extensible authentication protocol) fornece um método para transportar dados de autenticação em redes Wi-fi padrão IEEE 802.11 por meio de tunelamento entre clientes PEAP e um servidor de autenticação, de modo que os clientes são autenticados por meio de certificados somente do lado do servidor.


C

Certo


E

Errado

No contexto do ambiente Android, considere as seguintes afirmativas a respeito do SQLite.


I. Deve ser utilizado com o apoio de um servidor de bancos de dados separado.

II. Suporta transações (ACID).

III. Sua instalação requer cuidados, haja vista o número de arquivos que devem ser preparados.


Está correto o que se afirma em:


A

somente I;


B

somente II;


C

somente III;


D

somente I e III;


E

I, II e III.

   
Gerar simulado