🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

INSERT Statement

The INSERT statement facilitates the introduction or insertion of new records into a base database table. Always check the value of the system variable SY-SUBRC after executing the INSERT statement. A value of zero indicates successful insertion; otherwise, an error occurred, and the record was not inserted.

DATA: ls_new_record TYPE database_table.

ls_new_record-field1 = value1.
ls_new_record-field2 = value2.

INSERT database_table FROM ls_new_record.

IF sy-subrc = 0.
" Record inserted successfully.
ELSE.
" Error occurred during insertion.
ENDIF.

* Example: Inserting various elements from an internal table
DATA: lt_users_to_insert TYPE TABLE OF lt_employee_data,
lt_new_users TYPE TABLE OF lt_employee_data.

SELECT * FROM lt_employee_data INTO TABLE lt_new_users.

APPEND VALUE #( client = sy-mandt
id_number = 'NewID123'
full_name = 'New Employee1'
status = 'Active' ) TO lt_users_to_insert.

APPEND VALUE #( client = sy-mandt
id_number = 'NewID456'
full_name = 'New Employee2'
status = 'Active' ) TO lt_users_to_insert.

INSERT lt_employee_data FROM TABLE lt_users_to_insert.

IF sy-subrc = 0.
" Records inserted successfully.
ELSE.
" Error occurred during insertion.
ENDIF.

UPDATE Statement

The UPDATE statement allows the modification of one or more records in a base database table. After executing the UPDATE statement, check the value of the system variable SY-SUBRC. A value of zero signifies a successful update; otherwise, an error occurred, and the record was not updated.

* Example 1: Updating a specific record
CLEAR ls_user_to_update.
ls_user_to_update-client = sy-mandt.
ls_user_to_update-id_number = 'UniqueID123'.
ls_user_to_update-full_name = 'Jega'.
ls_user_to_update-status = 'Active'.

UPDATE z_users FROM ls_user_to_update.

IF sy-subrc = 0.
" Specific record updated successfully.
ELSE.
" Error occurred during update.
ENDIF.

* Example 2: Updating records based on a condition
UPDATE z_users SET full_name = 'JEGA'
WHERE id_number = 'ConditionID123'.

IF sy-subrc = 0.
" Records updated based on condition successfully.
ELSE.
" Error occurred during update.
ENDIF.

* Example 3: Updating all records from an internal table
SELECT * FROM z_users INTO TABLE lt_internal_users.

UPDATE z_users FROM TABLE lt_internal_users.

IF sy-subrc = 0.
" All records updated from internal table successfully.
ELSE.
" Error occurred during update.
ENDIF.

MODIFY Statement

The MODIFY statement permits the modification of one or more records in a base database table. Always check the value of the system variable SY-SUBRC after executing the MODIFY statement. A value of zero indicates successful modification; otherwise, an error occurred, and the record was not modified.

DATA: ls_record_to_modify TYPE database_table.

ls_record_to_modify-field1 = value1.
ls_record_to_modify-field2 = value2.

MODIFY database_table FROM ls_record_to_modify WHERE condition.

IF sy-subrc = 0.
" Record modified/created successfully.
ELSE.
" Error occurred during modification.
ENDIF.

* Example: Modifying all records in the database table based on an internal table
DATA: lt_users_to_modify TYPE TABLE OF ztabla_usuarios.
SELECT * FROM ztabla_usuarios INTO TABLE lt_users_to_modify.
MODIFY ztabla_usuarios FROM TABLE lt_users_to_modify.

IF sy-subrc = 0.
" All records modified successfully.
ELSE.
" Error occurred during modification.
ENDIF.

Note: If the record being modified doesn't exist in the database table, it will be created. Suppose we want to be very careful about which group our record belongs to when updating a database table. In that case, we use the 'CLIENT SPECIFY' clause to control and organize the information just the way we want it.

DELETE Statement

The DELETE statement is used to delete the content of one or more records from a base database table. After executing the DELETE statement, check the value of the system variable SY-SUBRC. A value of zero signifies successful deletion; otherwise, an error occurred, and the record was not deleted. The number of deleted records is stored in the system variable SY-DBCNT.

DELETE FROM database_table WHERE condition.

IF sy-subrc = 0.
" Record deleted successfully.
ELSE.
" Error occurred during deletion.
ENDIF.

* Example: Deleting all records from the database table based on an internal table
DATA: lt_users_to_delete TYPE TABLE OF ztabla_usuarios.
SELECT * FROM ztabla_usuarios INTO TABLE lt_users_to_delete.
DELETE ztabla_usuarios FROM TABLE lt_users_to_delete.

IF sy-subrc = 0.
" All records deleted successfully.
ELSE.
" Error occurred during deletion.
ENDIF.


Always attempt to insert or modify data through SAP's standard transactions or other techniques discussed later. It's essential to use INSERT, UPDATE, MODIFY, and DELETE just if it is strictly needed.

E.g

*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_JEGA_11
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_jega_11.

* Declaration of Structure
DATA: it_users TYPE STANDARD TABLE OF zuser_table_jega,
wa_users LIKE LINE OF it_users.

* Declaration of Variables
DATA: v_dni TYPE z_dni,
v_nomape TYPE z_nombre_ape,
v_estado TYPE z_estado_usu,
v_birthdate TYPE z_bd.

*----------------------------------------------------------------------*
* Selection Screen
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.

PARAMETERS: p_dni LIKE v_dni OBLIGATORY, " DNI
p_nomape LIKE v_nomape, " Name and Surname
p_estado LIKE v_estado, " User Status
p_bd LIKE v_birthdate. " Birthdate

SELECTION-SCREEN SKIP 1.

PARAMETERS: p_create RADIOBUTTON GROUP rbg, " Create
p_modify RADIOBUTTON GROUP rbg, " Modify
p_delete RADIOBUTTON GROUP rbg. " Delete

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
START-OF-SELECTION.
*----------------------------------------------------------------------*

* Create Users
IF p_create EQ 'X'.
CLEAR v_dni.
SELECT SINGLE dni
FROM zuser_table_jega
INTO v_dni
WHERE dni EQ p_dni.

IF sy-subrc EQ 0.
MESSAGE s001(z_prueba) WITH 'The record you are trying to create already exists'
DISPLAY LIKE 'E'.
ELSE.
CLEAR wa_users.
wa_users-mandt = sy-mandt.
wa_users-dni = p_dni.
wa_users-nombre_ape = p_nomape.
wa_users-estado = p_estado.
wa_users-birthdate = p_bd.
INSERT INTO zuser_table_jega VALUES wa_users.

IF sy-subrc EQ 0.
MESSAGE s001(z_prueba) WITH 'The record was created successfully'.
ENDIF.
ENDIF.

* Modify Users
ELSEIF p_modify EQ 'X'.
CLEAR v_dni.
SELECT SINGLE dni
FROM zuser_table_jega
INTO v_dni
WHERE dni EQ p_dni.

IF sy-subrc NE 0.
MESSAGE s001(z_prueba) WITH 'The record you are trying to modify does not exist'
DISPLAY LIKE 'E'.
ELSE.
CLEAR wa_users.
wa_users-mandt = sy-mandt.
wa_users-dni = p_dni.
wa_users-nombre_ape = p_nomape.
wa_users-estado = p_estado.
wa_users-birthdate = p_bd.
MODIFY zuser_table_jega FROM wa_users.

IF sy-subrc EQ 0.
MESSAGE s001(z_prueba) WITH 'The record was modified successfully'.
ENDIF.
ENDIF.

* Delete Users
ELSEIF p_delete EQ 'X'.
CLEAR v_dni.
SELECT SINGLE dni
FROM zuser_table_jega
INTO v_dni
WHERE dni EQ p_dni.

IF sy-subrc NE 0.
MESSAGE s001(z_prueba) WITH 'The record you are trying to delete does not exist'
DISPLAY LIKE 'E'.
ELSE.
CLEAR wa_users.
wa_users-mandt = sy-mandt.
wa_users-dni = p_dni.
wa_users-nombre_ape = p_nomape.
wa_users-estado = p_estado.
wa_users-birthdate = p_bd.
DELETE zuser_table_jega FROM wa_users.

IF sy-subrc EQ 0.
MESSAGE s001(z_prueba) WITH 'The record was deleted successfully'.
ENDIF.
ENDIF.
ENDIF.


 

 

 


Sobre el autor

Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Jaime Eduardo Gomez Arango

Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C

✒️Autor de: 99 Publicaciones Académicas

🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Presentación:

Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.

Certificación Académica de Jaime Gomez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las sentencias INSERT, UPDATE, MODIFY y DELETE" de la mano de nuestros alumnos.

SAP Master


LECCION 7. UNIDAD 3. INSERT UPDATE MODIFY, DELETE ACTUALIZACION Y RECUPERACION DE LA BASE DE DATOS. En esta lección se enseña a utilizar las sentencias INSERT, UPDATE, MODIFY, DELETE y como realizar la actualización y recuperación de la base de datos. SENTENCIA INSERT. La sentencia INSERT permite introducir nuevos registros a una base de datos. Siempre después de un INSERT se debe preguntar por el SY-SUBRC. Si es cero, el registro se insertó correctamente, caso contrario, se produjo un error y el registro no se insertó. SENTENCIA UPDATE. La sentencia UPDATE permite actualizar el contenido de uno o varios registros de una tabla base de datos registros de una tabla base de datos. SENTENCIA MODIFY....

Acceder a esta publicación

Creado y Compartido por: Jose Dario Angel Vanegas

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


INSERT INSERT INTO ztabla_usuarios VALUES wa_usuarios. INSERT ztabla_usuarios FROM TABLE ti_usuarios. (desde una tabla interna). UPDATE UPDATE ztabla_usuarios FROM wa_usuarios. UPDATE ztabla_usuarios SET nombre_ape = 'Nacho Martín' WHERE dni = '45487412X'. UPDATE ztabla_usuarios FROM TABLE ti_usuarios. MODIFY (Diferencia con UPDATE, si el registro que se intenta modificar no existe en la tabla, lo creará) MODIFY ztabla_usuarios FROM wa_usuarios. MODIFY ztabla_usuarios FROM TABLE ti_usuarios. DELETE DELETE ztabla_usuarios FROM wa_usuarios. DELETE FROM ztabla_usuarios WHERE dni = '54879652X'. DELETE FROM ztabla_usuarios FROM TABLE ti_usuarios. (Borramos tabla a partir del contenido de una tabla interna). La cantidad...

Acceder a esta publicación

Creado y Compartido por: Ignacio Martín Bolumar

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior


Apunte Creado OK - Iniciar Edición 1.- INSERT - INSERT INTO <table> VALUES <registro> - INSERT <table> FROM TABLE <table> 2.- UPDATE - UPDATE <table> FROM <registro> - UPDATE <table> FROM TABLE <table-ti> - UPDATE <table> SET <campo> = valor WHERE <campo> = valor. 3.- MODIFY -MODIFY <table> FROM <registro> - MODIFY <table> FROM TABLE <table> Si el registro que se intenta modificar no existe, este se creará. 4.- DELETE - DELETE <table> FROM <registro> Siempre se debe preguntar por el SY-SUBRC. Si es cero, el registro se borró correctamente. La cantidad de registros borrados se almacena en SY-DBCNT. - DELETE FROM <table>...

Acceder a esta publicación

Creado y Compartido por: Jose Raúl Borroni Basaez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Sentencia INSERT sentencia para insertar registros en una tabla interna o base de datos en SAP INSERT INTO VALUES siempre despues de un insert se debe preguntar por el sy-subrc si es cero el registro se inserto sino hay error . INSERT FROM TABLE SENTENCIA UPDATE para actualizar registros de una tabla base de datos SAP UPDATE FROM SIEMPRE DE UN UPDATE SE DEBE PREGUNTAR EL SY-SUBRC UPDATE FROM TABLE SENTENCIA MODIFY para modificar datos en tablas internas o tablas base de datos en SAP MODIFY FROM siempre despues de un MODIFY se debe preguntar por sy-subrc. MODIFY FROM TABLE SI EL REGISTRO NO EXISTE EN LA TABLA ESTE SE CREA AUTOMATICAMENTE SENTENCIA DELETE permite borrar el contenido de uno o varios registros de una tabla base de datos DELETE...

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

LA SENTENCIA INSERT: Introduce nuevos registros a una tabla. INSERT INTO ztabla_usuarios VALUES wa_usuarios. (pasa los valores de la estructura wa_usuarios a ztabla_usuarios, se entiende que solo es un registro a la vez). Para insertar toda la tabla (muchos registros) se usa: INSERT ztabla_usuarios FROM TABLE ti_usuarios. LA SENTENCIA UPDATE: Actualiza el contenido de los registros. UPDATE ztabla_usuarios FROM w_usuarios. UPDATE ztabla_usuarios SET nombre_ape = 'Pedro' WHERE dni = '3243'. para actualizar toda una tabla a partir de otra: UPDATE ztabla_usuarios FROM TABLE ti_usuarios. LA SENTENCIA MODIFY: Modifica el contenido de los registros de una base de datos. MODIFY ztabla:usuarios FROM wa. usuarios. para modificar el contenido a partir...

Acceder a esta publicación

Creado y Compartido por: Gerardo De La Rosa Rivera

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Utilizamos la sentencia INSERT para insertar registros en una tabla Z de base de datos. La sintaxis es: INSERT INTO tabla_bbdd VALUES estructura INSERT tabla_bbdd FROM TABLE tabla_interna Utilizamos la sentencia UPDATE para actualizar registros de una tabla Z de base de datos. La sintaxis es: UPDATE tabla_bbdd FROM estructura UPDATE tabla_bbdd SET campo = valor_nuevo WHERE condición UPDATE tabla_bbdd FROM TABLE tabla_interna Utilizamos la sentencia MODIFY para modificar registros de una tabla Z de base de datos. Si el registro no existe entonces lo creará. La sintaxis es: MODIFY tabla_bbdd FROM estructura MODIFY tabla_bbdd FROM TABLE tabla_interna Utilizamos la sentencia DELETE para borrar registros...

Acceder a esta publicación

Creado y Compartido por: Jonatan Richioni

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Sentencias INSERT, UPDATE, MODIFY, DELETE: INSERT: Permite introducir nuevos registros. UPDATE: Permite actualizar registros, si el registro que se quiere actualizar no existe, manda error. MODIFY: Permite modificar registros, si el registro que se quiere modificar no existe, este se creará. DELETE: Permite borrar registros. TIPS: Cuando actualizamos una base de datos, no es necesario especificar mandante, ya que SAP controla que siempre se procese el mandante en uso. Si queremos actualizar datos de otro mandante, utilizamos clausula CLIENT ESPECIFY. IMPORTANTE: Las instrucciones INSERT, DELETE, MOFIFY y UPDATE deben ser utilizadas lo menos posible, ya que siempre se deben modificar los datos mediante las transacciones...

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Sentencia INSERT Nos permite ingresar registros en una base de datos completamos el área y luego. INSERT INTO tabla VALUES área. Luego de un Insert así como otras sentencias de acceso a base de datos, es conveniente verificar el estado de SY-SUBRC para saber si fue exitosa la ejecución de la sentencia. Para insertar todos los registros de una tabla interna: INSERT tabla FROM TABLE tabla_interna. UPDATE Para actualizar registros de la base. completamos el área y luego. UPDATE tabla FROM area. Para actualizar un campo. UPDATE tabla SET campo = valor WHERE condición. Es importante que en la condición esté la clave de la tabla, esto mejorará la performance de la ejecución notoriamente....

Acceder a esta publicación

Creado y Compartido por: Daniel Martinez Chaer / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

INSERT, UPDATE, MODIFY, DELETE y Actualización y recuperación de la base de datos La sentencia INSERT permite introducir nuevos registros a una base de datos. Siempre después de un INSERT se debe preguntar por el SY-SUBRC. Si es cero, el registro se insertó correctamente. La sentencia UPDATE permite actualizar el contenido de uno o varios registros de una tabla base de datos. La sentencia MODIFY permite modificar el contenido de uno o varios registros de una tabla base de datos. La sentencia DELETE permite borrar el contenido de uno o varios registros de una tabla base de datos. Para finalizar una unidad de procesamiento lógico LUW de base de daots se utiliza un COMMIT WORK que realiza un update físico...

Acceder a esta publicación

Creado y Compartido por: Abraham Arredondo Caceda / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Operaciones de una base de datos INSERT: Nos pemite introducir nuevos registros a la base de datos, usamos la siguiente sintaxis: INSERT INTO <Tabla> VALUES <area de trabajo> INSERT <Tabla> FROM TABLE <tabla interna> UPDATE: Nos permite actualizar el contenido de la base de datos, usaremos la siguiente sintaxis: UPDATE <tabla> FROM <area de trabajo> UPDATE <tabla> SET <campos actualizar> WHERE <condiciones> UPDATE <tabla> FROM TABLE <tabla interna> MODIFY: Permite modificar el contenido de uno o varios registros de la base de datos, usaremos la siguiente sintaxis: MODIFY <tabla> FROM <area de trabajo> MODIFY <tabla>...

Acceder a esta publicación

Creado y Compartido por: Marvin Raul Lopez Morales / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!