Oracle - función plsql

Función

Los parámetros de la función están en los parámetros de entrada, y el retorno es la salida.

Sintaxis:

crear  [ o reemplazar ] el  nombre de la función de la función 
(parámetro 1 tipo 1, parámetro 2 tipo 2, ...) 
 devolver el tipo de valor de retorno
  es / as 
    [ define variable ] 
 comenzar 
     - ejecutar el resultado de 
   retorno de la declaración ;
 [ excepción- 
    manejo de excepciones 
 ]  
 Fin ;

   *** 1. El parámetro de la función solo puede estar en modo, puede omitirlo en
    2. Cuando se declara la función, debe usar return más el tipo de valor de retorno.
      Tenga en cuenta que el tipo de valor de retorno de return solo necesita indicar el tipo, sin definir la longitud, por ejemplo : Devuelve varchar2;
      variable: tipo de datos varchar2 (30)
    3. El resultado de la función debe devolverse mediante return, es decir, utilice el resultado de return en begin;

Sin función de parámetro:

- Escribir una función que devuelve el HelloWorld 
- almacenados en la base de datos, compilación, y luego ejecutar 
la opción Crear  o  el reemplazar  la función sayHello
 retorno  VARCHAR2 
ES 
- declaraciones de variables, .... 
la empiezan 
   - código de la lógica 
   
   - el uso de retorno para devolver resultados 
   vuelven  ' Hola mundo ' ; 

Fin ; 

- la función de oráculo: TO_CHAR () TO_DATE () 
- llamada de función: llamar a la instrucción SQL   
SELECT la sayHello () de doble;

Función parametrizada:

- de acuerdo con el número de empleados, el cálculo anual de los ingresos de los empleados (salario + bono) * 12 
del Crear  o  al sustituir  la función getYealSal (ENO emp.empno % del tipo)
 volver  Número La 
SE 
  v_sal emp.sal % del tipo; 
  v_comm emp.comm % del tipo,
 el inicio 
  seleccione sal, comm en v_sal, v_comm desde emp donde empno = eno;
   si v_comm es  nulo  , 
    devuelva   v_sal *  12 ; de lo
    contrario, 
      devuelva   (v_sal + v_comm)*  12 ;
    Fin  SI ;
 Fin ; 

- llamar 
la SELECT E. * , GetYealSal (e.empno) ingresos anuales de emp E;

La diferencia entre procedimientos almacenados y funciones

    1 ) Las palabras clave son diferentes: Procedimiento almacenado: procedimiento , función: función 
    2 ) Los parámetros en el procedimiento almacenado pueden tener parámetros de entrada, parámetros de salida, todos los parámetros en la función están en parámetros de entrada
     3 ) El procedimiento almacenado no determina el tipo de valor de retorno, pero Puede usar el parámetro out para devolver el resultado. La función necesita determinar el tipo de valor de retorno. Usar return para devolver el resultado.
     4 ) El procedimiento almacenado se llama en el bloque pl / sql, o exec, y la función solo se puede llamar en la instrucción sql

 

Supongo que te gusta

Origin www.cnblogs.com/64Byte/p/12746619.html
Recomendado
Clasificación