ABAP資料表的操作

2021-10-02 02:04:36 字數 2159 閱讀 5037

這幾天對於資料標的操作表較多,自己從網上找資料和自己動手操作總結了一些資料表的增刪改查操作,希望對一些初學者有所幫助,僅供參考。

開源的資料庫操作都離不開insert、update、modify和delete語句。其中當sy-dbcnt返回為0,則表示操作成功,此外還將返回實際操作的資料行數。需要指明的是open sql本身並不進行操作許可權的檢查,若需要進行設定,則要在系統中建立授權物件。

一.insert語句

open sql中的insert語句用於向資料庫中插入新條目。

1.插入單行資料:dbtab是內錶,wa是工作區。

insert into dbtab values wa.

insert into dbtab from wa.

內錶:internal memory table 記憶體中的表,是外設(螢幕、磁碟,印表機等)和資料庫表資料交換的中介。

wa為工作區,是與資料庫具有相同結構的資料物件,一般直接基於資料庫結構宣告。該語句也可以將資料插入檢視中,首先該檢視所有字段必須來自同乙個資料庫表,而且在資料字典中的maintenance status屬性必須設定為read and change

注:如果相同表關鍵字的資料條目已經存在,則不能重新插入,只能對非關鍵字進行更改(update,modify)

2.插入多行資料:datab是內錶,itab是表

insert dbtab from tables itab.

其中itab是內錶,包含希望插入的資料條目。

注:內錶應與資料庫的行結構一致。

所有條目成功插入,則sy-subrc返回0

使用accepting duplicate可避免該錯誤。

insert dbtab from table itab accepting duplicate keys.

accepting duplicate的效果是:若出現關鍵字相同,返回4,並跳過其再更新所有的其他。

二.update語句

1.更新單行資料:

update dbtab set f1=g1 ... fn=gn where .

f表組建欄位名,g為新設定的值,where為確保只更新單行。

注:除f=g外還可 f=f+g、f=f-g

通過工作區更改單行資料:

update dbtab from wa.

2.更新多行資料:

update dbtab set f1=g1 ... fi=gi [where ].

也可以使用set和where子句同時更新多行資料值;此外不需要在where中限定所有表關鍵字,該語句本身將更新所有滿足條件的資料條目,若不是用where子句,則將更新當前資料集團中的所有資料行。

注:如果至少有一行資料被更新sy-bubrc返回0,否則返回4。

還可通過內錶來更新多行資料:

update target from table itab.

三.modify語句

modify語句是sap的open sql中專有語句,該語句相當於insert和update語句的結合。引入期的原因是當更新資料庫操作時,並不確知資料庫中是否遺憾相應的資料行。

1.新增或更新單行:

modify dbtab from wa.

注:操作後sy-subrc恒為0;sy-dbcnt為1

2.新增或更新多行:

modify dbtab from table itab.

內錶itab將覆蓋資料庫表中具有相同主關鍵字的條目。

注:sy-subrc恒為0;sy-dbcnt返回行數

四.delete語句

1.刪除單行資料:

delete from dbtab where .

或 delete dbtab from wa.

其中where必須指明全部表關鍵字段的值;wa為工作區,若不去dbtab匹配操作將失敗。

2.刪除多行資料:

delete from dbtab where .

delete dbtab[client specified] from table itab.

注:返回值同modify

3.刪除多行資料:

兩種形式:1).通過內錶刪除多行資料條目的過程中將內錶置為空;2).使用where field like '%'。

ABAP的資料表

ranges語句 要用與選擇表相同的結構建立內錶 可使用 ranges語句,如下所示 語法 ranges for 該語句建立選擇表 該錶參考資料庫表的列 或內部字段 選擇表必須在程式中填充。不必在程式中再用tables語句宣告資料庫表。ranges 語句是下列語句的短格式 data begin of...

ABAP常用資料表

基礎表 名稱 描述 t001w 工廠 分支機構 t001l 倉儲地點 kna1 客戶主檔案的一般資料 mara 常規物料資料 mean 物料的國際商品號 makt 物料描述 t156 移動型別 t134 物料型別 dost bom 鏈結文件 mast bom 鏈結物料 stpo bom 專案 dd0...

資料表的操作

表是組成資料庫的基本的元素 表的基本操作有 建立 檢視 更新 刪除。表中的資料庫物件包含列 索引 觸發器。列 屬性列,建立表時指定的名字和資料型別,索引 根據制定的資料庫表建立起來的順序,提供了快速訪問資料的途徑且可以監督表的資料 觸發器 指使用者定義的事務命令集合,當對乙個表中的資料進行插入 更行...