abap中表和数据之间的差异

时间:2013-12-16 11:46:09

标签: abap

我对ABAP有疑问:

两个陈述之间有什么区别:

tables mara.

data: test type mara.

它现在完全一样吗?t

2 个答案:

答案 0 :(得分:2)

tables mara. 

声明带有标题的内部表,将内部表的行结构定义为透明表mara。

建议不要使用带有标题的内部表,因为这会令人困惑。

data: test type mara.

声明一个工作区,其结构定义为透明表mara,换句话说,该结构与表mara具有相同的字段。

答案 1 :(得分:1)

tables语句声明数据字典表/结构的工作区,通常用于逻辑数据库。 data语句用于创建任何类型DDIC的变量,本地或临时。

所以tables语句实际上并没有让你定义你想要的任何变量,并且通常只应该用于逻辑数据库,因为像内部表上的标题行一样,它会使你的代码有点模糊(有一个原因是标题行和表OO Abap不再支持声明。