Área de Tecnologías de la Información y las Comunicaciones Aplicadas
Área de Tecnologías de la Información y las Comunicaciones Aplicadas Universidad de Murcia
Área de Tecnologías de la Información y las Comunicaciones Aplicadas
ATICA arrow Consultoria arrow DBconnector arrow PLSQL - Insert/Update desde una fila (rowtype)
24.05.2012
 
 
PLSQL - Insert/Update desde una fila (rowtype) Imprimir E-mail
Con la versión 9.2, Oracle introduce esta nueva funcionalidad, que permite directamente insertar (o actualizar) una fila de una tabla usando una variable tipo fila (ROWTYPE), desde PL/SQL. De esta forma no tenemos que indicar los nombres de la columnas de la fila a insertar (o actualizar).

  • La forma de hacer el INSERT sería la siguiente. Supongamos que en la tabla EMP, queremos insertar una fila con EMP.EMPNO=1 y los valores del resto de las columnas para la fila EMP.EMPNO=7902:
      declare
        emp_rec emp%rowtype;
      begin
        select * into emp_rec from emp where empno=7902;
        emp_rec.empno:=1;
        insert into emp values emp_rec;
      end;
      /
  • La forma de hacer el UPDATE sería ésta. Supongamos que ahora queremos que la fila EMP.EMPNO=1 tenga, para el resto de columnas, los valores que tienen en la fila EMP.EMPNO=7900:
      declare
        emp_rec emp%rowtype;
      begin
        select * into emp_rec from emp where empno=7900;
        emp_rec.empno:=1;
        update emp set row = emp_rec where empno=emp_rec.empno;
      end;
      /


Fecha de publicación: 09/11/2005
Autor: Juan Luis Serradilla Amarilla. juanlu@um.es

Última modificación ( 07.03.2012 )
 
Área de Tecnologías de la Información y las Comunicaciones Aplicadas
Volver al incio del documento Volver al inicio del documento
Área de Tecnologías de la Información y las Comunicaciones Aplicadas