Você está na página 1de 3

Atividade prática avaliativa.

No servidor de banco de dados de nossa disciplina existe a base


(bd_nomealuno_atv_03) que pode ser acessada com seu usuário (nomealuno) e senha
(RA). Construa as funções/procedimentos solicitados em seu banco. Inicie o nome das
rotinas com o número do exercício. Exemplo: exercicio_1_defina_o_nome.

1) Faça um procedimento ou função que receba dois números e imprima a soma, a


subtração, a multiplicação e a divisão do primeiro pelo segundo.

Dada a seguinte estrutura (exercícios 2, 3 e 4).


Fonte: Base BUTUCA – Prof. Ricardo Luis dos Santos. IFSUL.
http://www.ricardoluis.com/wp-content/uploads/2015/08/Stored-Procedures-e-
Triggers.pdf

2) Crie um procedimento que efetue o depósito em uma conta e exiba o saldo;

3) Crie um procedimento que efetue o saque de uma conta e exiba o saldo. Verifique se
existe saldo para o saque.

4) Criar um procedimento que faca a transferências entre contas. Verifique se existe


saldo para então efetivar a transferência.

5) Crie uma função que limpe os caracteres ponto “.” e traço de uma string qualquer.

Exemplo: Se a entrada for ‘123.456.789-00’ retornar 12345678900.

6) Crie uma função que retorne uma string qualquer com um tamanho N completando
com zeros a esquerda.
Exemplo. Se N = 5 e a string de entrada for ‘123’ retornar ‘00123’.
7) Crie uma função que retorne uma data por extenso;
Exemplo: Se a entrada for ‘10/04/2021’ retorar ‘10 de abril que 2021’
8) O sequinte código é a implementação do algoritmo módulo 11 em PL/PgSQL. Crie
uma função similar no Mysql.
CREATE OR REPLACE FUNCTION modulo11(numeroEntrada bigint) RETURNS
bigint AS
$BODY$
DECLARE
valor varchar;
i integer;
peso integer;
soma integer;
numero integer;
resto integer;
resultado integer;
BEGIN
peso := 2;
soma := 0;
i := 0;
valor := Cast(numeroEntrada as text);

for i in reverse (length(valor))..1 loop


numero := 0;
numero := cast(substr(valor,i,1) as integer) * peso;

soma := soma + numero;


peso := peso + 1;

if peso = 10 then
peso := 2;
end if;
end loop;

resto := soma % 11;


resultado := 11 - resto;

if (resultado > 9) then


resultado := 0;
end if;

return resultado;
END;

$BODY$
9) Faça uma função para calcular o digito verificador do CPF.

(https://dicasdeprogramacao.com.br/algoritmo-para-validar-cpf/)
(http://www.decom.ufop.br/guilherme/BCC441/geral/bd2_plpgsql.pdf)

Você também pode gostar