1. 內錶的型別及定義:
(1).any table:即任意表型別,此種定義方式只能在傳遞引數的時候定義。
例如:form *** using/changing type any table .
(2).any table包括了兩種型別:index table和hashed table 。
《1》.index table:包括了standard table和sorted table
a. standard table:其實就是乙個線性表,通過key訪問內錶是線性查詢的,也就是說,隨著表中記錄的增加,對錶的操作的時間開銷也相應的增加。
定義方法:types/data: like/type standard table of .
b. sorted table:顧名思義,表中的記錄是按照一定的順序排列的。訪問表的主要方式是表中定義的key,如果key不唯一,則選擇index最小的那個。也可以通過index來訪問排序表,如果你想通過index插入一條記錄,系統會自動檢查你插入的位置是否正確。所以,如果插入的時間比插入到標準表的時間會長。因此,盡量選擇key來對排序表進行操作。
定義方法:types/data: like/type sorted table of .
《2》.hashed table:對雜湊表只能用你定義的key進行操作,而不能使用index進行操作。因此,定義雜湊表必須定義unique key 。注意:所有關於使用index操作表的語句都不能用於操作雜湊表。例如:sort,loop等。
定義方法:types/data: like/type hashed table of .
2. 內錶的操作:
(1).建立:
a. 定義乙個結構,然後type/like這個結構
例如:types: begin of ,
...i> ...,
...end of .
data type standard table of
with non-unique default key
initial size
with header line.
b. type/like系統表或者資料庫表或者結構
data type standard table of 《系統表名》
initial size
with header line.
(2).新增資料:
b.向表中插入資料:
1. insert [wa into|initial line into] itab [index idx] [assigning |reference into dref].
2. insert [wa into|initial line into] table itab [assigning |reference into dref].
3. insert lines of itab1 [from idx1] [to idx2] into itab2 [index idx3].
4. insert lines of itab1 [from idx1] [to idx2] into table itab2.
c.相同字段求和向表裡新增:
basic form
collect [wa into] itab.
extras:
1. ... assigning
2. ... reference into dref
3. ... sorted by f
(3).刪除資料:
1. delete itab.
2. delete table itab with table key k1 = v1 ... kn = vn.
3. delete table itab [from wa].
4. delete itab index idx.
5. delete itab from idx1 to idx2.
6. delete itab where logexp.
7. delete adjacent duplicates from itab.
(4).修改資料:
1. modify itab [from wa] [index idx] [assigning |reference into dref] [transporting f1 ... fn].
2. modify table itab [from wa] [assigning |reference into dref] [transporting f1 ... fn].
3. modify itab [from wa] transporting f1 ... fn where cond.
ABAP動態內錶
定義的動態內錶,對應內錶一行的工作區 field symbols type standard table type any.form create dynamic table data lt fcat type slis t fieldcat alv,ls fcat like line of lt ...
ABAP 內錶定義
內 表是記憶體中建立的乙個臨時表,你可以在程式執行時對錶中的資料進行,插入,修改,刪除等操作,程式跑完了,就會被釋放。內錶共有3種型別 1.standard 標準表 一般用的比較多 2.sorted 排序表 3.hashed 雜湊表,一般用的比較少 工作區 內錶按照行進行訪問,必須使用 某個區域 工...
ABAP 內錶總結 1
一 內錶是什麼 用處 當程式中處理有固定結構的資料時候,就需要使用內錶,特別是內錶是在程式中儲存資料庫表的載體。內錶 internal memory table 記憶體中的表,是外設 螢幕 磁碟,印表機等 和資料庫表資料交換的中介。注意 在abap語言中不提供二維陣列,內錶相當於二維陣列,它是乙個表...