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

Abap 向内部表中的特定字段插入数据,abap,internal-tables,Abap,Internal Tables,我有一张桌子,我们叫它“dbtab”。 我的内部表的名称是“it_tab” 我在“新号码”里有一个号码 我使用以下方法将该数字插入数据库选项卡中的空字段“laufnr”: update dbtab set laufnr = new_number where laufnr = ''. 这很好,但更改不在我的it_选项卡中 如何从数据库选项卡更新内部表 或者如何向内部表中的特定字段插入值?您有两个选项: 更新数据库表时,请使用以下内容更新内部表:LOOP AT it\u tab assing WH

我有一张桌子,我们叫它“dbtab”。 我的内部表的名称是“it_tab”

我在“新号码”里有一个号码

我使用以下方法将该数字插入数据库选项卡中的空字段“laufnr”:

update dbtab set laufnr = new_number where laufnr = ''.
这很好,但更改不在我的it_选项卡中

如何从数据库选项卡更新内部表

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

您有两个选项:

  • 更新数据库表时,请使用以下内容更新内部表:
    LOOP AT it\u tab assing WHERE laufnr=''-laufnr=新编号。结束循环。
  • 对数据库进行更新后,将数据从数据库表重新读取到内部表中
  • 您有两个选择:

  • 更新数据库表时,请使用以下内容更新内部表:
    LOOP AT it\u tab assing WHERE laufnr=''-laufnr=新编号。结束循环。
  • 对数据库进行更新后,将数据从数据库表重新读取到内部表中

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

    另一个选项是简单地重新加载dbtab

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

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

    另一个选项是简单地重新加载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.
    

    嗨,试试这个,希望对你有帮助

    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.
    

    选项1的其他写入:
    DATA(ls\u tab)=it\u tab的值行类型(laufnr=新编号)。从传输laufnr的ls_选项卡修改it_选项卡,其中laufnr=''。
    选项1的其他写入:
    数据(ls_选项卡)=it_选项卡的值行类型(laufnr=新编号)。在laufnr=''的ls\U选项卡中修改it\U选项卡。