Questões de Concurso Sobre pl-sql em banco de dados

Foram encontradas 377 questões

Q486744 Banco de Dados
Considere a sintaxe de instrução Oracle a seguir:

imagem-009.jpg

Sobre esta sintaxe, é correto afirmar que
Alternativas
Q486742 Banco de Dados
Considere a instrução Oracle PL/SQL a seguir.

CREATE VIEW valores (nome, minsal, maxsal, medsal)
AS SELECT d.depnome, MIN(e.sal), MAX(e.sal), AVG(e.sal)
FROM empregado e, departamento d
WHERE e.depnro=d.depnro
GROUP BY d.depnome;


Considere a existência das tabelas departamento e empregado, relacionadas de forma que cada departamento possa ter um ou muitos empregados ligados a ele. Na tabela departamento existem os campos depnro (chave primária) e depnome e na tabela empregado existem os campos empnro (chave primária), empnome, cargo, sal e depnro (chave estrangeira). Considere que em ambas as tabelas existem registros cadastrados relacionando adequadamente departamentos a empregados.

A instrução acima
Alternativas
Q486741 Banco de Dados
No Oracle um trigger é um bloco PL/SQL armazenado no banco de dados e acionado (executado) em resposta a um evento especificado. Nesse contexto, observe o trigger a seguir:

imagem-008.jpg

Considere que:

- A tabela empregados contém os campos citados no trigger;
- O banco de dados está aberto e funcionando em condições ideais;
- O funcionário cujo sobrenome é Souza possui como id_emp o valor 'VEND'.

Ao se executar a instrução UPDATE empregados SET salario = 5500 WHERE sobrenome='Souza'; é correto afirmar que
Alternativas
Q481271 Banco de Dados
Suponha que tenha sido criada uma Procedure na linguagem PL-SQL do Oracle 11g, denominada Paper, sem parâmetros de entrada. Uma das formas de invocar essa Procedure é por meio do comando
Alternativas
Q481269 Banco de Dados
Na linguagem PL/SQL, deseja-se desabilitar um trigger denominado Abc, mas não excluí-lo do banco de dados. O comando que realiza esta tarefa é
Alternativas
Q481268 Banco de Dados
Na linguagem PL/SQL, deseja-se expressar uma condição de desigualdade, por exemplo, em uma cláusula WHERE. A condição de desigualdade expressa corretamente é
Alternativas
Q481267 Banco de Dados
Na linguagem PL/SQL, deseja-se especificar um atributo numérico com 5 dígitos no total, sendo 2 desses dígitos após a vírgula. A forma para representar tal atributo é
Alternativas
Q473486 Banco de Dados
No PL/SQL do sistema gerenciador de bancos de dados Oracle 10 g, os cursores do tipo explícito possuem 4 atributos. O atributo utilizado para verificar se um cursor está aberto é o
Alternativas
Q473485 Banco de Dados
No PL/SQL do sistema gerenciador de bancos de dados Oracle 10g, há a opção de se colocar labels em um loop. A sintaxe adequada para a inserção de labels é:
Alternativas
Q473484 Banco de Dados
Considere o seguinte trecho de um comando do tipo CASE no PL/SQL do sistema gerenciador de bancos de dados Oracle 10 g.

                        CASE teste
                              X ‘A’ . . .
                              X ‘B’ . . .
                              ELSE . . .
                        END CASE

O valor correto de X para completar o comando CASE é:
Alternativas
Q473483 Banco de Dados
No PL/SQL do sistema gerenciador de bancos de dados Oracle 10 g, o tamanho máximo de uma variável do tipo CHAR é:
Alternativas
Q473482 Banco de Dados
Considerando o PL/SQL do sistema gerenciador de bancos de dados Oracle 10 g, indique a alternativa que apresenta o formato de um comentário válido.
Alternativas
Q473478 Banco de Dados
Em PL/SQL, no Oracle 8i ou superior, para se recuperar os valores de colunas das linhas afetadas por uma instrução INSERT, UPDATE ou DELETE, deve-se utilizar a cláusula
Alternativas
Q465667 Banco de Dados
Considere uma tabela em uso chamada func, de um banco de dados Oracle contendo, dentre outros, os campos para armazenar o número do funcionário (FunNo) e a data de admissão (FDatAdm).

Para exibir o número do funcionário, a data de admissão e o número de meses entre a data de admissão e a data atual, utiliza- se a instrução PL/SQL
Alternativas
Q463758 Banco de Dados
No PL/SQL, considere o seguinte trecho de um comando:

                                        ...<< abc >> ....

No trecho, abc é um
Alternativas
Q459902 Banco de Dados
Para determinar a quantidade de caracteres contidos em um campo CLOB, de um banco de dados Oracle 10gR2, em uma consulta PL/SQL, pode-se utilizar:
Alternativas
Q459897 Banco de Dados
Suponha a seguinte consulta PL/SQL em uma tabela denominada empregado

SELECT empno,
       enome,
       funcao,
       salario,
       LAG(salario, 1, 0) OVER (ORDER BY salario) AS XX
FROM empregado;

Nesta consulta, XX irá conter:
Alternativas
Q459891 Banco de Dados
Em PL/SQL, realizar JOIN entre duas tabelas cujos campos da condição da junção sejam homônimos pode ser completado empregando a cláusula:
Alternativas
Q459887 Banco de Dados
O seguinte código PL/SQL, executado em um banco de dados Oracle 12c, deve ser considerado para a resolução da questão.

drop table teste;
create table teste (
               val      NUMBER,
               descricao            varchar2(15)
);
insert all
               into teste
               into teste
SELECT level,
SUBSTR(dbms_random.string(‘U’,10),1,10)
from dual connect by level < 10;
commit;



Assinale a alternativa que indica o resultado correto da execução da consulta:

select distinct length(descricao) from teste
Alternativas
Q455252 Banco de Dados
Em um ambiente de banco de dados Oracle 11g ideal, foram criadas duas tabelas por meio das instruções PL/SQL a seguir: 

CREATE TABLE orders (order_id NUMBER PRIMARY KEY, line_items_count NUMBER DEFAULT 0 ); CREATE TABLE lineitems (order_id REFERENCES orders, seq_no NUMBER, CONSTRAINT lineitems PRIMARY KEY(order_id,seq_no) );

Foi criada, relacionada às tabelas, a seguinte trigger, colocada em execução:


CREATE OR REPLACE TRIGGER lineitems_trigger    AFTER INSERT OR UPDATE OR DELETE ON lineitems    FOR EACH ROW BEGIN    IF (INSERTING OR UPDATING)    THEN      UPDATE orders SET line_items_count = NVL(line_items_count,0)+1      WHERE order_id = :new.order_id;   END IF;    IF (DELETING OR UPDATING)   THEN
     UPDATE orders SET line_items_count = NVL(line_items_count,0)-1       WHERE order_id = :old.order_id;   END IF; END; /
Em seguida, foram executadas as instruções abaixo, nesta ordem:
INSERT INTO orders (order_id) VALUES (78); INSERT INTO orders(order_id) VALUES (92); INSERT INTO lineitems (order_id, seq_no) VALUES (78,1); INSERT INTO lineitems (order_id, seq_no) VALUES (78,2); SELECT * FROM orders;




Considere:

I. Ao executar a instrução INSERT INTO orders (order_id) VALUES (78); a trigger incrementou o valor contido no campo line_items_count passando de 0 para 1.

II. Ao executar a instrução INSERT INTO lineitems (order_id, seq_no) VALUES (78,1); a trigger incrementou o valor contido no campo line_items_count da tabela orders passando de 0 para 1.

III. Ao executar a instrução INSERT INTO lineitems (order_id, seq_no) VALUES (78,2); a trigger incrementou o valor contido no campo line_items_count da tabela orders passando de 1 para 2.

IV. A instrução SELECT * FROM orders; mostrará no campo line_items_count da linha cujo order_id é 78 o valor 3.

Está correto o que consta APENAS em
Alternativas
Respostas
221: C
222: E
223: A
224: D
225: E
226: B
227: D
228: C
229: C
230: B
231: E
232: A
233: B
234: E
235: A
236: D
237: C
238: A
239: B
240: D