首页 文章

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

提问于
浏览
0

我有一个表,我们称之为“dbtab” . 我的内部表的名称是“it_tab” .

我在“new_number”中有一个数字 .

我使用以下命令将该数字插入我的dbtab中的空字段“laufnr”:

update dbtab set laufnr = new_number where laufnr = ''.

这工作得很好,但更改不在我的it_tab中 .

如何从dbtab更新内部表?

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

4 回答

  • 1

    您有两种选择:

    • 使用以下内容更新数据库表时更新内部表: LOOP AT it_tab ASSIGING <tab> WHERE laufnr = ''. <tab>-laufnr = new_number. ENDLOOP.

    • 在对数据库进行更新后,将数据库表中的数据重新读入内部表 .

  • 0

    嗨试试这希望它有所帮助

    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.
    
  • 0

    您可以像数据库表一样更新您的itab ...唯一的区别是,您不能使用“更新”...而是使用“修改” .

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

    另一种选择是简单地重新加载dbtab

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

    有两个不同的东西,它们没有联系 . 内部表是特定时刻的数据集的表示 . 数据库表是最新的数据 . 您可以设置更改其中任何一个,但不能同时使用单个指令更改两者 . 我将建议: - 更新您的数据库 - 刷新内存中的副本提示:如果您想“艰难地”这样做,只需创建一个对象,并在某种UPDATE方法中执行这两项操作 .

相关问题