Entering content frame

Minimize the Amount of Data Transferred Locate the document in its SAP Library structure

Data is transferred between the database system and the application server in blocks. Each block is up to 32 KB in size (the precise size depends on your network communication hardware). Administration information is transported in the blocks as well as the data.

To minimize the network load, you should transfer as few blocks as possible. Open SQL allows you to do this as follows:

Restrict the Number of Lines

If you only want to read a certain number of lines in a SELECTstatement, use the UP TO n ROWS der FROM- addition in the FROM clause. This tells the database system only to transfer n lines back to the application server. This is more efficient than transferring more lines than necessary back to the application server and then discarding them in your ABAP program.

If you expect your WHERE clause to return a large number of duplicate entries, you can use the DISTINCT addition in the SELECT clause.

Restrict the Number of Columns

You should only read the columns from a database table that you actually need in the program. To do this, list the columns in the SELECT clause. Note here that the INTO CORRESPONDING FIELDSaddition in the INTO clause is only efficient with large volumes of data, otherwise the runtime required to compare the names is too great. For small amounts of data, use a list of variables in the INTO clause.

Do not use * to select all columns unless you really need them. However, if you list individual columns, you may have to adjust the program if the structure of the database table is changed in the ABAP Dictionary. If you specify the database table dynamically, you must always read all of its columns.

Use Aggregate Functions

If you only want to use data for calculations, it is often more efficient to use the aggregate functions of the SELECT clause than to read the individual entries from the database and perform the calculations in the ABAP program.

Aggregate functions allow you to find out the number of values and find the sum, average, minimum, and maximum values. Following an aggregate expression, only its result is transferred from the database.

Data Transfer when Changing Table Lines

When you use the UPDATE statement to change lines in the table, you should use the WHERE clause to specify the relevant lines, and then SET statements to change only the required columns.

When you use a work area to overwrite table lines, too much data is often transferred. Furthermore, this method requires an extra SELECT statement to fill the work area.



Leaving content frame