jueves, 8 de diciembre de 2016

SQL%ROWCOUNT


Un valor entero que representa el número de filas afectadas por la última sentencia SQL.

Puede probar el SQL%ROWCOUNT , SQL%FOUND , y atributos de SQL%NOTFOUND en la sección ejecutable de un bloque para recoger información después se ejecuta el comando apropiados DML. PL / SQL no devuelve un error si una sentencia DML no afecta a las filas de la tabla subyacente. Sin embargo, si una sentencia SELECT no recupera ninguna fila, PL / SQL devuelve una excepción.

Observe que los atributos tienen el prefijo SQL. Estos atributos del cursor se utilizan con los cursores implícitos que son creados automáticamente por PL / SQL y para los que no saben los nombres. Por lo tanto, se utiliza SQL en lugar del nombre del cursor.

El atributo SQL%NOTFOUND es lo contrario de SQL%NOTFOUND . Este atributo puede ser utilizado como la condición de salida en un bucle. Es útil en UPDATE y DELETE cuando se cambian ninguna fila porque excepciones no se devuelven en estos casos.
Usted aprenderá acerca de cursor explícito atributos en la lección titulada "Uso de los cursores explícitos".

DECLARE
  v_rows_deleted VARCHAR2(30)
  v_empno employees.employee_id%TYPE := 176;
BEGIN

  DELETE FROM  employees
  WHERE employee_id = v_empno;
  v_rows_deleted := (SQL%ROWCOUNT ||
                       ' row deleted.');
  DBMS_OUTPUT.PUT_LINE (v_rows_deleted);

END;

El ejemplo elimina una fila con employee_id 176 de la tabla de empleados. Usando el atributo% ROWCOUNT SQL, puede imprimir el número de registros borrados.

Share:

0 comentarios:

Publicar un comentario

Archivo

Cual es el tema de mayor interes para ti?