日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【实用】ABAP“FOR ALL ENTRIES”的Hints 优化

發布時間:2025/3/20 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【实用】ABAP“FOR ALL ENTRIES”的Hints 优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ABAP“FOR ALL ENTRIES”的Hints 優化

?

通常默認情況下“FOR ALL ENTRIES IN”語句會將內表每5個數據生成一個新的Where語句來執行。

可通過事務代碼“RZ11”查詢參數名稱“rsdb/max_blocking_factor”,如下圖所示。

?

比如下面的代碼(僅供測試):

REPORT?ZTEST.
DATA?:?BEGIN?OF?LT_KNA1?OCCURS?0,
?????????KUNNR?TYPE?KNA1-KUNNR,
???????END?OF?LT_KNA1.
DATA?:?LT_KNB1?LIKE?TABLE?OF?KNB1?WITH?HEADER?LINE.
START-OF-SELECTION.
??SELECT?*?FROM?KNA1
????INTO?CORRESPONDING?FIELDS?OF?TABLE?LT_KNA1.
??IF?LT_KNA1[]?IS?NOT?INITIAL.
????SELECT?*?FROM?KNB1
??????INTO?TABLE?LT_KNB1
??????FOR?ALL?ENTRIES?IN?LT_KNA1
??????WHERE?KUNNR?=?LT_KNA1-KUNNR.
??ENDIF.
??WRITE?:?'Finish!'.

我們用事務代碼“ST05”跟蹤執行后可以發現,默認確實是讀取內表中的五條數據。

?

為了減少與數據庫的交互,縮減Select語句的次數,我們可以在Select語句的最后加上了這樣一句話,每次讀取的數據就會發生變化。

%_HINTS?ORACLE?'&max_blocking_factor?20&?&max_in_blocking_factor?20&'

(這里注意若是HANA數據庫,需要換成%_HINTS?HDB)

?

但是,rsdb/max_blocking_factor?設置的過大可能會使 SQL 超長,造成程序 DUMP,所以設置需謹慎。

?

【擴展學習】

  • rsdb/MB_CUR_MAX
  • rsdb/_create_single_client_cond
  • rsdb/cua/buffersize
  • rsdb/cua/max_objects
  • rsdb/cua/mutex_n
  • rsdb/db2jcl_library
  • rsdb/dbhost
  • rsdb/dbid
  • rsdb/esm/buffersize_kb
  • rsdb/esm/large_object_size
  • rsdb/esm/max_objects
  • rsdb/esm/mutex_n
  • rsdb/fda_level
  • rsdb/fda_shm_seg_size
  • rsdb/icli_library
  • rsdb/max_blocking_factor
  • rsdb/max_in_blocking_factor
  • rsdb/max_union_blocking_factor
  • rsdb/min_blocking_factor
  • rsdb/min_in_blocking_factor
  • rsdb/min_union_blocking_factor
  • rsdb/ntab/entrycount
  • rsdb/ntab/ftabsize
  • rsdb/ntab/irbdsize
  • rsdb/ntab/sntabsize
  • rsdb/obj/buffersize
  • rsdb/obj/large_object_size
  • rsdb/obj/max_objects
  • rsdb/obj/mutex_n
  • rsdb/oracle_host_standby
  • rsdb/oracle_sid_standby
  • rsdb/otr/buffersize_kb
  • rsdb/otr/max_objects
  • rsdb/otr/mutex_n
  • rsdb/prefer_fix_blocking
  • rsdb/prefer_in_itab_opt
  • rsdb/prefer_join
  • rsdb/prefer_join_with_fda
  • rsdb/prefer_union_all
  • rsdb/rclu/opt_level
  • rsdb/rda
  • rsdb/reco_add_error_codes
  • rsdb/reco_ping_cmd
  • rsdb/reco_sleep_time
  • rsdb/reco_sosw_for_db
  • rsdb/reco_sync_all_server
  • rsdb/reco_tcp_service
  • rsdb/reco_trials
  • rsdb/rep/fast_touch
  • rsdb/ssfs_connect
  • rsdb/staton
  • rsdb/stattime
  • rsdb/supports_fda_prot
  • rsdb/tbi_buffer_area_MB
  • rsdb/tbi_dir_entries
  • rsdb/trace_modules
  • rsdb/vmcj/codepage_compatibility

?

總結

以上是生活随笔為你收集整理的【实用】ABAP“FOR ALL ENTRIES”的Hints 优化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。