ABAP Keyword Documentation →  ABAP − Reference →  Processing External Data →  ABAP Database Accesses →  Open SQL →  Open SQL - Write Accesses → 

INSERT dbtab  Syntax Diagram

Short Reference

Syntax

INSERT { {INTO target VALUES wa }
       | {     target FROM   wa|{TABLE itab} } }.

Effect

The INSERT statement inserts one or more rows specified in source into the database table specified in target. The two variants with INTO and VALUES or without INTO with FROM behave identically, with the exception that no internal tables can be specified after VALUES.

If VALUES is used, there must be an INTO between INSERT and target. If FROM is used, INTO must not be specified.

System Fields

The statement INSERT sets the values of the system fields sy-subrc and sy-dbcnt.

sy-subrc Meaning
0 When a work area was declared in source, the specified row was changed. In the declaration of an internal table in source, all declared rows were inserted, or the internal table is empty.
2 When a LOB handle structure was specified with a component for writer streams, the non-LOB handle components were not yet written to the database, but instead are passed when the stream is clased, at the latest. Whether this situation occurs or not depends on the database. Refer to LOB handles.
4 When a work area was specified in source, the declared row was not inserted, or, when an internal table was specified in source, not all declared rows were inserted, since a row in the database table has the same primary key or a unique secondary index.

The INSERT statement sets sy-dbcnt to the number of rows inserted. If an overflow occurs because the number or rows is greater than 2,147,483,647, sy-dbcnt is set to -1. If sy-subrc is 2, sy-dbcnt is also set to the value -1 (for undefined).

Notes




Continue
INSERT dbtab - target
INSERT dbtab - source