Baixe o app para aproveitar ainda mais
Prévia do material em texto
3.Crie um bloco anônimo utilizando a estrutura CASE que deverá inserir dentro da tabela DIAS_DA_SEMANA o valor corresponde ao dia da semana armazenado dentro de uma variável numérica. Caso o valor passado não corresponda a de um dia da semana deverá ser impresso uma mensagem informando que o valor é inválido. Estrutura da tabela DIAS_DA_SEMANA: create table dias_da_semana(mensagem varchar2(20)); Exemplos: 1 --> Domingo 2--> Segunda-feira 3--> Terca-feira 7 --> Sábado 33 --> Dia invalidoTexto Multilinha. (10 Pontos) 4.Já sabemos a importância das estruturas de controle que estudamos em lógica de programação, em PL/pgSQL também iremos utilizá-las, para controlar o fluxo de execução de blocos de instruções. Também temos a necessidade de controlar um fluxo, que pode se repetir ou em determinadas circunstâncias nem mesmo precisar ser executado. Na maioria das linguagens de programação temos as estruturas de controle que podem nos dar repetições simples, repetições condicionais e desvio de fluxo. Com base nestas informações, quais são as estruturas de controle (condição e repetição) da linguagem Procedural de Banco de dados PL/pgSQL?Opção única. (10 Pontos) Condição: if/else. Repetição: loop, while, for. Condição: if/elsif, switch-case. Repetição: while, foreach, do-while. Condição: if/else. Repetição while, for, do-while, switch-case. Condição: foreach, if/else, switch-case. Repetição: while, for, do-while. Condição if/else, switch-case, while. Repetição: for x in (0,1,2,3,4):, do-while. 5.Considere a existência de uma tabela chamada funcionario que contém os campos abaixo: id - inteiro, não nulo, chave primária. nome - cadeia de caracteres, não nulo. cargo - cadeia de caracteres, não nulo. salario - número real, não nulo. Utilizando a PL/SQL, para exibir o nome do funcionário, o salário, e o salário aumentado (reajustado) em 30%, arredondado com 0 casas decimais e com legenda de coluna Salário Reajustado, utiliza-se a instrução: Opção única. (10 Pontos) select nome, salario, round((salario * 1.3),0) "Salário Reajustado" from funcionario; 6.Com relação aos modos de parâmetros de procedures PL/SQL é correto afirmar:Opção única. Existem três modos de parâmetros: IN, OUT e IN OUT. 7.Nas linguagens procedurais de banco de dados como no PL/SQL e PL/pgSQL, podemos declarar as variáveis com o tipo %TYPE. Sobre o %TYPE é correto afirmar que:Opção única. Armazena dados booleanos Armazenar e converter os dados de um varchar para um array Armazena os dados de uma consulta Armazena o tipo definido de uma coluna de uma tabela Armazena dados de um cursor 8.Em relação a PL/SQL, responda:Opção única. . aceita a manipulação de dados e permite que instruções de consulta do SQL sejam incluídas em unidades procedurais de código e estruturadas em blocos. 9.O cursor FOR LOOP apresenta uma grande economia na codificação do processo de leitura do cursor, ou seja, podemos fazer a leitura do cursor escrevendo menos. Os comandos que são executados implicitamente são: (__) FETCH (__) CLOSE (__) OPEN (__) A declaração do select do cursor (__) COMMIT V V V F F V F V F V F F F V V F F V F V V V F F F 10.Informe qual é o problema do bloco anônimo abaixo? DECLARE x NUMBER := 2; BEGIN IF ((x*2)/4) = 1 THEN dbms_output.put_line('Igual a 1!'); ELSIF ((x*2)/2) = 2 THEN dbms_output.put_line('Igual a 2!'); ELSE dbms_output.put_line('Igual a 0'); END IF END;Opção única. (10 Pontos) A comparação de valores no SQL/PLUS é feita utilizando dois sinais de igual (==) ao invés de apenas um (=). Falta o comando END IF para indicar o encerramento da estrutura de condição. A variável x está declarada de forma errada. Não se pode utilizar parênteses dentro de um comando IF ou ELSIF. Nenhum, o bloco anônimo executará normalmente. 11.A PL/SQL é uma linguagem procedural que estende a linguagem padrão SQL e sua unidade básica é um bloco. A seção utilizada para declaração de variáveis, tipos e subprogramas locais de um bloco PL/SQL é definida pela palavra reservada:Opção única. (10 Pontos) declare end loop; end; select * from dias_da_semana;
Compartilhar