静态SQL
静态SQL可以使用 ABAP 7.4 新语法 Static SQL can be suitable for ABAP 7.4
静态SQL示例
DATA:
lt_mara TYPE STANDARD TABLE OF mara.
SELECT
matnr
FROM
mara
WHERE
matnr EQ '0000001'
INTO TABLE @lt_mara.
动态SQL
动态SQL目前不支持 ABAP 7.4 新语法 Active SQL isn't suitable for the ABAP 7.4
INTO TABLE 不能放在最后 INTO TABLE can't be the end
括号是必须的 Brackets required
动态SQL示例
DATA:
lv_field(20) TYPE c,
lv_table(10) TYPE c,
lv_where(40) TYPE c,
lt_mara TYPE STANDARD TABLE OF mara.
lv_field = 'matnr'.
lv_table = 'mara'.
lv_where = 'matnr EQ 000001'.
" Example 1
SELECT
(lv_field)
FROM
(lv_table)
INTO TABLE lt_mara
WHERE
(lv_where).
" Example 2
SELECT
(lv_field)
INTO TABLE lt_mara
FROM
(lv_table)
WHERE
(lv_where).
注意 Focus
WHERE 条件语句里应为内部值 Value Internal,如果有前导零需要加上前导零 Preamble Zero
未完待续...
To be continued
ABAP 7.4中的静态与动态SQL:比较与应用

本文探讨了ABAP 7.4版本中静态SQL和动态SQL的使用。静态SQL提供了更高效和简洁的查询方式,如示例所示,可以直接将结果插入到表格中。然而,动态SQL在灵活性上占优,但需要注意语法限制,如不支持新语法,INTO TABLE不能放在最后,并且必须使用括号。在动态SQL的示例中,展示了如何通过变量构建查询语句。文章强调了在WHERE条件中使用内部值的重要性,并提示注意前导零的处理。
1021

被折叠的 条评论
为什么被折叠?



