将数据插入内部表中的特定字段



我有一个表格,我们称其为" dbtab"。我的内部表的名称是" it_tab"。

我在" new_number"中有一个数字。

我通过使用:

将该数字插入我的dbtab中的空字段" laufnr"中
update dbtab set laufnr = new_number where laufnr = ''.

这可以正常工作,但是我的IT_TAB中的更改不是。

如何从DBTAB更新内部表?

或如何将值插入内部表中的特定字段?

您有两个选项:

  1. 更新内部表时,您更新数据库表,其中包括以下内容:LOOP AT it_tab ASSIGING <tab> WHERE laufnr = ''. <tab>-laufnr = new_number. ENDLOOP.
  2. 在您对数据库进行更新后,将数据库表从数据库表重新读取到内部表中。

您可以更新ITAB几乎像数据库表一样。唯一的区别是,您不能使用"更新" ...使用"修改"。

modify it_tab set laufnr = new_number where laufnr = '' .

另一个选择就是简单地重新加载DBTAB

CLEAR it_tab.
SELECT * INTO it_tab FROM dbtab WHERE .... .

有两种不同的东西,它们没有链接。内部表是在特定时间内的数据集的表示。数据库表是数据本身最新的。您可以设法更改其中的任何一个,但并非同时通过一项指令更改。我将推荐: - 更新数据库 - 刷新内存副本提示:如果您想做"困难的方式",只需创建一个对象,然后用某种更新方法来完成这两个事情。

嗨,请尝试一下,希望它有帮助

LOOP AT it_tab.
   it_tab-lufnr = new_number.
   MODIFY it_tab TRASNPOTING laufnr WHERE laufnr = ''.
ENDLOOP.

或条件

 LOOP AT it_tab where laufnr = ''.
   it_tab-lufnr = new_number.
   MODIFY it_tab TRASNPOTING laufnr WHERE laufnr = ''.
 ENDLOOP.

相关内容

  • 没有找到相关文章

最新更新