ABAP OPEN SQL——内表与内表结构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP OPEN SQL——内表与内表结构相关的知识,希望对你有一定的参考价值。

参考技术A

ABAP 中可以定义结构来包含多个基本类型,便于整理及操作;

结构体不属于数据字典对象(数据字典中可以定义结构体,但不能存储数据),在程序运行时会被作为临时对象存储在内存空间;

在创建内表时,可参考直接定义的结构体作为 内表结构 。

结构体的定义,可以通过两种方式实现:

1.第一种方式

语法:

如:

比如tables: mseg.就创建了一个跟表MSEG类型一样的工作区。还可以创建一个一模一样的工作区tables: *mseg。
tables的最源大好处是取单条数据的时候,可以不加加into语句zd,如:
select single * from mseg.
select single * from *mseg.
如果没有tables语句,则不加into会报错

结构体也就是工作区,结构体是由几个字段组成的一个结构,相当于内表的一行数据。内表是内存中的表可以有多行数据。

SY-SUBRC = 0 代表成功。

其中corresponding表示将查询出来的字段装进表kna1和内表GT_KNA1 共有的字段到内表GT_KNA1
CL_DEMO_OUTPUT=>DISPLAY( GT_KNA1 ). 输出

LOOP AT 表名 INTO 结构名
CLEAR 结构名
ENDLOOP

APPEND 结构体 TO 表名. (向内表的最后一行插入一行,APPEND只能用于标准表中)

APPEND LINES OF表2 FROM 1 TO 3 TO 表1.(向内表1插入内表2中的n行)

INSERT 结构体 INTO 表名 INDEX 索引.(向内表insert数据到指定index,如果不指定插入到的index则功能和APPEND一样)

INSERT LINES OF 表 FROM 1 TO 3 INTO TABLE 表1.

READ TABLE 表名 INTO 结构体 INDEX 索引.(在结构体中读一个表)

以上是关于ABAP OPEN SQL——内表与内表结构的主要内容,如果未能解决你的问题,请参考以下文章

详解ABAP/4内表结构

abap 怎样使两张内表合成一个内表

ABAP 中内表的复制

Extract Dataset

ABAP:for all entries in 语句

abap怎么把一个内表A的全部数据赋值到另外一个内表B