Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

perguntas da entrevista oracle PLSQL


Aqui está a compilação das perguntas mais comuns da entrevista sobre o Oracle plsql. Isso com certeza irá ajudá-lo na entrevista. As perguntas vão do nível básico ao avançado e cobrem a maioria dos aspectos da programação PLSQL. Espero que você ache isso útil

Pergunta (1) O que é Oracle PLSQL?
Resposta
PL/SQL é uma extensão de linguagem procedural para Structured Query Language (SQL). O propósito do PL/SQL é combinar linguagem de banco de dados e linguagem de programação procedural


Pergunta(2) Quais são os componentes de um bloco PL/SQL?
Resposta
Parte declarativa, parte executável e parte de exceção.

Pergunta (3) Quais são os tipos de dados disponíveis em PL/SQL?
Resposta
Alguns tipos de dados escalares, como
NUMBER, VARCHAR2, DATE, CHAR, LONG, BOOLEAN.
Alguns tipos de dados compostos, como RECORD &TABLE.

Pergunta (4) O que é um cursor? Por que o cursor é necessário?
Resposta
O cursor é uma área SQL privada nomeada de onde as informações podem ser acessadas.
Os cursores são necessários para processar linhas individualmente para consultas que retornam várias linhas.

Pergunta (5)  Qual é a diferença entre Procedimento e Função?
Resposta
Função Procedimento
A função deve retornar um valor O procedimento não precisa
Sintaxe 
nome da FUNÇÃO (lista de argumentos …..) O tipo de dados de retorno é
declarações de variáveis ​​locais
Iniciar
instruções executáveis
Exceção
manipuladores de execução
Fim;
Sintaxe
Nome do PROCEDIMENTO (lista de parâmetros…..)
é
declarações de variáveis ​​locais
BEGIN
Instruções executáveis.
Exceção.
manipuladores de exceção
fim;
A função pode ser usada em SQL com algumas restrições O procedimento não pode ser chamado diretamente do SQL.

Pergunta (6) Qual é a diferença entre DELETE e TRUNCATE?
Resposta
Excluir Truncar
DELETE é um comando DML TRUNCATE é um comando DDL.
Sintaxe 
Excluir * da tabela
Commit;
Sintaxe
Truncar a tabela ;
Não altera a marca d'água TRUNCATE redefine os blocos de memória após a execução, ou seja, define a marca d'água alta do objeto
Pode ser revertido Não pode ser revertido
O acionador de exclusão é acionado Nenhum acionador será acionado
Segmentos de reversão são usados Menos segmentos de rollback são usados ​​e é muito mais rápido

Pergunta (7) O que é Cursor Implícito e Cursor Explícito?
Resposta
Cursor implícito Cursor explícito
O Cursor Implícito é definido e controlado internamente pela Oracle. O cursor explícito é definido e controlado programaticamente.
Sintaxe 
declarar
v_dept varchar2(50);
começar
selecione dept em v_dept de dept where location ='XYZ';
fim;
Sintaxe
declarar
v_dept varchar2(50);
Cursor Cur_dept é selecionar dept em v_dept de dept where location ='XYZ';
começar
Abrir Cur_dept;
Busca Cur_dept em v_dept;
Fechar Cur_dept;
fim;
Todas as consultas de seleção/atualização usadas no bloco PL/SQL são um cursor implícito O cursor explícito está aberto, busca e fecha

Pergunta (8) O que são rowid e rownum?
Resposta
Rowid é um número hexadecimal exclusivo para cada linha de uma tabela que é usada para pesquisa.
Rownum é um número inteiro exclusivo para cada linha de uma tabela que pode ser usado para classificação ou análise.

Pergunta (9)  Explique a diferença entre FUNÇÃO, PROCEDIMENTO e PACOTE
Resposta
Função -Uma função tem um tipo de retorno em sua especificação e deve retornar um valor especificado nesse tipo.
-Elas são armazenadas de forma compilada no banco de dados
– As funções podem ser chamadas em qualquer lugar de uma forma válida expressão
Selecione fnd_profile.value('xyz)  de dual;
Procedimento -Um procedimento não possui um tipo de retorno em sua especificação e não deve retornar nenhum valor, mas pode ter uma instrução de retorno que simplesmente interrompe sua execução e retorna ao chamador
-Eles são armazenados em forma compilada no banco de dados
-Procedures são chamados como instruções executáveis ​​autônomas:my_proc(parameter1,parameter2…);
Pacotes -Os pacotes contêm funções, procedimentos e outras estruturas de dados.
– As vantagens dos pacotes são Modularidade, Design de Aplicativo Mais Fácil e Informações.
Ocultação, Reutilização e Melhor Desempenho.
-Existem várias diferenças entre programas PL/SQL empacotados e não empacotados.
Pacote Os dados no pacote são persistentes durante a sessão do usuário. Os dados no pacote, portanto, existem entre os commits na sessão.
-Se você conceder privilégio de execução em um pacote, é para todas as funções e procedimentos e estruturas de dados na especificação do pacote. Você não pode conceder privilégios em apenas um procedimento ou função dentro de um pacote.-Você pode sobrecarregar procedimentos e funções dentro de um pacote, declarando vários programas com o mesmo nome. O programa correto a ser chamado é decidido em tempo de execução, com base no número de tipos de dados dos parâmetros.

Pergunta (10)   Defina Commit, Rollback e Save-point.

Responda.
Confirmar Commit é usado para tornar a transação permanente
As seguintes coisas acontecem quando um commit é executado
a)Todo o trabalho feito pela transação se torna permanente.
b)Outros usuários podem ver as mudanças nos dados feitas pela transação.
c )Quaisquer bloqueios adquiridos pela transação são liberados.
Reversão A reversão é usada para desfazer a transação .
As seguintes coisas acontecem quando um rollback é executado
a)Todo o trabalho feito pela transação é desfeito como se não tivesse sido emitido.
b) Quaisquer bloqueios adquiridos pela transação são liberados .
Savepoint Um SAVEPOINT é um ponto em uma transação em que você pode reverter a transação para um determinado ponto sem reverter a transação inteira.

Pergunta (11)  O que são SQLCODE e SQLERRM e por que eles são importantes para desenvolvedores de PL/SQL?
Resposta

SQLCODE retorna o valor do número do erro para o último erro encontrado. O SQLERRM retorna a mensagem de erro real para o último erro encontrado. Eles podem ser usados ​​no tratamento de exceções para relatar, ou armazenar em uma tabela de log de erros, o erro ocorrido no código. Eles são especialmente úteis para a exceção WHEN OTHERS.

Pergunta (12) Como você pode encontrar dentro de um bloco PL/SQL, se um cursor estiver aberto?
Resposta
Use a variável de status do cursor %ISOPEN.

Pergunta (13) Como você pode gerar saída de depuração de PL/SQL?
Resposta
Use o pacote DBMS_OUTPUT. Outro método possível é usar apenas o comando SHOW ERROR, mas isso só mostra erros. O pacote DBMS_OUTPUT pode ser usado para mostrar resultados intermediários de loops e o status das variáveis ​​conforme o procedimento é executado. O novo pacote UTL_FILE também pode ser usado.

Pergunta (14) O que são exceções PL/SQL?
Resposta
Alguns deles são
1.Too_many_rows
2.No_Data_Found
3.Value_error
4.Zero_error etc.

Pergunta (15) Qual é o número máximo de acionadores que você pode aplicar em uma única tabela?
Resposta
12 acionadores.

Pergunta (16) Quais são as duas partes do pacote?
Resposta
As duas partes são especificação do pacote e corpo do pacote
Elas consistem na especificação do pacote, que contém os cabeçalhos de função, cabeçalhos de procedimento e estruturas de dados visíveis externamente. O corpo do pacote contém as seções de declaração, executável e tratamento de exceção de todos os procedimentos e funções agrupados.


Pergunta (17) O que é a sobrecarga de procedimentos?
Resposta
Repetição do mesmo nome de procedimento com uma lista de parâmetros diferente


Pergunta (18) Quais são os modos de parâmetros que podem ser passados ​​para um procedimento?
Resposta
Parâmetros IN, OUT, IN-OUT.

Pergunta (19) Que comando você usaria para criptografar um aplicativo PL/SQL?
Resposta
EMBRAGEM


Pergunta (20) Quantos tipos de gatilhos existem em PL/SQL?
Resposta
Existem 12 tipos de gatilhos em PL/SQL que contêm a combinação das palavras-chave BEFORE, AFTER, ROW, TABLE, INSERT, UPDATE, DELETE e ALL.
◦BEFORE ALL ROW INSERT
◦APÓS TUDO INSERIR LINHA
◦ANTES DE INSERIR
◦APÓS INSERIR etc.

Pergunta (21) Nomeie as tabelas onde as características de Pacote, procedimento e funções são armazenadas?
Resposta
dba_objects, dba_Source e dba_error.
ou
user_objects,user_Source e user_error.


Pergunta (22) O que é procedimento armazenado?
Resposta
Um procedimento armazenado é uma sequência de instruções ou um bloco PL/SQL nomeado que executa uma ou mais funções específicas. É semelhante a um procedimento em outras linguagens de programação. Ele é armazenado no banco de dados e pode ser executado repetidamente. Ele é armazenado como um objeto de esquema. Ele pode ser aninhado, invocado e parametrizado.


Pergunta (23) Como executar um procedimento armazenado?
Resposta
Há duas maneiras de executar um procedimento armazenado.
No prompt do SQL, escreva EXECUTE ou EXEC seguido por procedure_name

Pergunta (24) O que é Raise_application_error?
Resposta
Raise_application_error é um procedimento do pacote DBMS_STANDARD que permite emitir mensagens de erro definidas pelo usuário a partir de um subprograma armazenado ou trigger de banco de dados.

Pergunta (25) O que é Pragma EXECPTION_INIT? Explique o uso?
Resposta
O PRAGMA EXCEPTION_INIT diz ao compilador para associar uma exceção a um erro oracle. Para obter uma mensagem de erro de um erro oracle específico.

por exemplo. PRAGMA EXCEPTION_INIT (nome da exceção, número do erro oracle)

Espero que você goste desta compilação de perguntas da entrevista sobre o Oracle PlSQL. Estarei postando mais perguntas assim no futuro

Links relacionados

Aplicativos Oracle entrevistam perguntas e respostas

perguntas da entrevista oracle dba

Perguntas da entrevista do Oracle RAC

Perguntas da entrevista Weblogic

Espero que você goste da compilação de perguntas da entrevista oracle plsql. Por favor, forneça o feedback