Julgue os itens subsecutivos, a respeito de conceitos e coma...

Próximas questões
Com base no mesmo assunto
Q268221 Banco de Dados
Julgue os itens subsecutivos, a respeito de conceitos e comandos PL/SQL do Oracle 10g.

Diferentemente de uma função que não retorna resultados, uma stored procedure executa comandos e retorna um resultado que é armazenado nas variáveis da seção DECLARE.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: E - errado

Vamos esclarecer o tema abordado na questão. No ambiente Oracle, temos dois tipos principais de blocos de códigos armazenados, conhecidos como stored procedures e funções. Ambos são utilizados para executar operações no banco de dados, mas possuem diferenças significativas em seu comportamento e propósito.

As stored procedures são blocos de códigos que realizam ações no banco de dados, como inserir, atualizar ou deletar dados, e podem ou não retornar valores. Quando precisam retornar valores, elas utilizam parâmetros de saída (OUT parameters). Elas não são designadas para retornar valores diretamente como resultado da execução, mas sim para realizar operações e alterações no estado do banco de dados.

Por outro lado, as funções são projetadas para retornar um único valor e são comumente utilizadas em consultas SQL. Elas são definidas de forma a produzir um resultado que pode ser atribuído a uma variável ou utilizado em expressões. Diferente das stored procedures, funções podem ser usadas em locais onde expressões são aceitáveis, como em listas de seleção, condições WHERE, entre outros.

O enunciado da questão sugere uma inversão nessa lógica, afirmando que uma stored procedure retorna um resultado que é armazenado nas variáveis da seção DECLARE de um bloco PL/SQL, o que não é correto. A confusão pode ocorrer pelo fato de que tanto stored procedures quanto funções podem usar a seção DECLARE para definir variáveis locais, mas a forma como os resultados são retornados é que difere.

Portanto, a afirmação de que uma stored procedure é quem retorna resultados diretamente para as variáveis na seção DECLARE é incorreta. O correto seria dizer que uma função retorna um valor diretamente e pode ser atribuído a uma variável, enquanto uma stored procedure pode utilizar parâmetros OUT para passar resultados para variáveis externas ao procedimento.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Uma função retorna resultados através do comando return.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo