
Las sentencias INSERT, UPDATE, MODIFY Y DELETE
1. La sentencia INSERT
Permite introducir o insertar nuevos registros a una tabla base de datos. Ejemplo:
* Insertamos 1 registro en la tabla ZTABLA_USUARIOS CLEAR wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '21727679'. wa_usuarios-nombre_ape = 'Juan Graco'. wa_usuarios-estado_usu = 'A'.
Siempre despues de la ejecución de la sentencia INSERT se debe preguntar por el contenido de la variable del sistema SY-SUBRC. Si es 0 esto significa que el registro se insertó correctamente, caso contrario se produjo un error y el registro no se insertó.
Si quisiéramos insertar todos los registros almacenados en la tabla interna ti_usuarios en la tabla base de datos ztabla_usuarios entonces ejecutaremos el siguiente código:
INSERT into ztabla_usuarios values wa_usuarios. 2. La sentencia UPDATE
Permite actualizar el contenido de uno o varios registros de una tabla base de datos. Por ejemplo, si deseamos actualizar un registro completo de la tabla base de datos ztabla_usuarios ejecutaríamos el siguiente código:
* Actualizamos un registro de la tabla ZTABLA_USUARIOS CLEAR wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '21727679'. wa_usuarios-nombre_ape = 'Juan Graco'. wa_usuarios-estado_usu = 'I'. UPDATE ztabla_usuarios FROM wa_usuarios.
Si deseamos actualizar los registros de la tabla base de datos ztabla_usuarios que cumplan con determinada condición entonces ejecutaríamos el siguiente código.
* Actualizamos el nombre y apellido del usuario con DNI 23547312 UPDATE ztabla_usuarios SET nombre_ape = 'Ezequiel Fernandez' WHERE dni = '23547312'.
Si deseamos actualizar todos los registros de la tabla base de datos ztabla_usuarios a partir del contenido de una tabla interna entonces ejecutaríamos el siguiente código:
* Actualizamos la tabla ZTABLA_USUARIOS con la tabla interna TI_USUARIOS UPDATE ztabla_usuarios FROM TABLE ti_usuarios.
Permite modificar el contenido de uno o varios registros de una tabla base de datos
* Modificamos un registro en la tabla ZTABLA_USUARIOS CLEAR wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '21727679'. wa_usuarios-nombre_ape = 'Juan Graco'. wa_usuarios-estado_usu = 'N'. MODIFY ztabla_usuarios FROM wa_usuarios. Si deseamos modificar todos los registros de la tabla base de datos ztabla_usuarios a partir del contenido de una tabla interna entonces ejecutaríamos el siguiente código:
* Modificamos los registros de ZTABLA_USUARIOS con la tabla interna * TI_USUARIOS MODIFY ztabla_usuarios FROM TABLE ti_usuarios.
4. La sentencia DELETE
Permite borrar el contenido de uno o varios registros de una tabla base de datos. Ejemplo:
* Borramos un registro de la tabla ZTABLA_USUARIOS CLEAR wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '21727679'. wa_usuarios-nombre_ape = 'Juan Graco'. wa_usuarios-estado_usu = 'N'. DELETE ztabla_usuarios FROM wa_usuarios.
Si deseamos borrar los registros de la tabla base de datos ztabla_usuarios que cumplan con determinada condición entonces ejecutaríamos el siguiente código:* Borramos de la tabla ZTABLA_USUARIOS el registro con DNI = '23547312'
DELETE FROM ztabla_usuarios WHERE dni = '23547312'.
Si deseamos borrar todos los registros de la tabla base de datos ztabla_usuarios a partir del contenido de una tabla interna entonces ejecutaríamos el siguiente código:
* Borramos de la tabla ZTABLA_USUARIOS los registros de la tabla interna
* TI_USUARIOS
DELETE ztabla_usuarios FROM TABLE ti_usuarios.