Função Flashcards

(23 cards)

1
Q

Qual a principal diferença entre uma procedure e uma função em PL/SQL?

A

Uma procedure executa comandos sem necessariamente retornar um valor específico, enquanto uma função sempre retorna um valor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qual a estrutura básica para criar uma função em PL/SQL?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que significa a cláusula RETURN na criação de uma função?

A

RETURN especifica o tipo de dado que a função irá retornar. Ex: RETURN VARCHAR2; ou RETURN SEGMERCADO.DESCRICAO%type;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Onde e como declarar variáveis dentro de uma função PL/SQL?

A

As variáveis são declaradas após a palavra-chave IS e antes do BEGIN. Ex:

IS
v_descricao SEGMERCADO.DESCRICAO%type;
BEGIN

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Como especificar o valor que a função deve retornar?

A

Dentro do bloco BEGIN, utilize a palavra-chave RETURN seguida da variável ou valor a ser retornado. Ex: RETURN v_descricao;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Como chamar uma função dentro de uma consulta SQL?

A

Utilize o nome da função seguido dos parênteses com os parâmetros necessários. Ex: SELECT ID, obter_descricao_segmercado(ID) FROM SEGMERCADO;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

O que acontece se você usar uma função em uma consulta sem a cláusula WHERE?

A

A função será executada para cada linha da tabela, aplicando a lógica da função a cada registro.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qual a importância de passar o parâmetro correto para uma função?

A

A função precisa receber o tipo de dado esperado para funcionar corretamente e retornar o valor desejado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Onde mais, além de um SELECT, você pode usar uma função em PL/SQL?

A

Funções podem ser usadas em qualquer lugar onde um valor do tipo de retorno da função seja esperado, como em atribuições de variáveis, em outras funções ou procedures, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

O que devo verificar se a função não está retornando o valor esperado?

A

Se os parâmetros passados estão corretos.
Se a lógica dentro da função está correta.
Se o tipo de retorno da função corresponde ao tipo de dado que você está esperando.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Como você usaria essa função em uma consulta para obter o dobro do ID de cada segmento de mercado?

A

SELECT ID, dobrar_numero(ID) AS dobro_do_id FROM SEGMERCADO;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Crie uma função que receba o nome de um produto e retorne o preço com um aumento de 10%. Assuma que existe uma tabela PRODUTOS com colunas NOME (VARCHAR2) e PRECO (NUMBER).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Crie uma função que receba um ID de cliente e retorne o número total de pedidos feitos por esse cliente. Assuma que existe uma tabela PEDIDOS com colunas ID_CLIENTE (NUMBER) e ID_PEDIDO (NUMBER).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Crie uma função que receba uma data e retorne o dia da semana correspondente (ex: ‘Segunda-feira’).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Crie uma função que receba um código de país (ex: ‘BR’) e retorne o nome completo do país. Assuma que existe uma tabela PAISES com colunas CODIGO (VARCHAR2) e NOME (VARCHAR2).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Crie uma função que receba um valor em dólares e retorne o valor equivalente em reais, utilizando uma taxa de câmbio fixa (ex: 5.0).

17
Q

Construa uma função com o nome RETORNA_CATEGORIA que, passando o código do produto, teremos o retorno da categoria.

18
Q

Qual o propósito do comando VARIABLE g_DESCRICAO VARCHAR2(100); no ambiente Oracle?

A

Declara uma variável chamada g_DESCRICAO do tipo VARCHAR2 com um tamanho máximo de 100 caracteres, fora de um bloco PL/SQL.

19
Q

Qual a função do comando EXECUTE :g_DESCRICAO := obter_descricao_segmercado(3);?

A

Executa a função obter_descricao_segmercado com o parâmetro 3 e atribui o resultado à variável g_DESCRICAO.

20
Q

Para que serve o comando PRINT g_DESCRICAO;?

A

Exibe o valor armazenado na variável g_DESCRICAO no console.

21
Q

Em que contexto esses comandos são utilizados?

A

São utilizados no ambiente SQL*Plus do Oracle (ou similar) para executar comandos SQL e PL/SQL fora de um bloco PL/SQL anônimo ou nomeado.

22
Q

Qual a finalidade da linha v_DESCRICAO := obter_descricao_segmercado(v_ID);?

23
Q

O que o comando dbms_output.put_line(‘A descrição do segmento de mercado é’ || v_DESCRICAO); realiza?

A

Imprime no console a frase “A descrição do segmento de mercado é” concatenada com o valor da variável v_DESCRICAO.