检查表X中是否存在X列

时间:2018-10-05 10:28:07

标签: sap abap

我有两个字符串变量:

  • lv_table_name包含一个表名
  • lv_column_name包含列名

是否可以检查是否存在具有给定列的表(或视图)?

2 个答案:

答案 0 :(得分:5)

您可以在表DD03L中找到表和视图定义。如果您可以使用提到的组合表/列访问该表,则将明显更快。

REPORT.

DATA: lv_column_name TYPE string VALUE 'MY_FIELD'.

"this will tell you which tables/views exist containing the column 'MY_FIELD'
SELECT tabname
  FROM dd03l INTO TABLE @DATA(lt_tables)
  WHERE fieldname EQ @lv_column_name.

答案 1 :(得分:1)

对于Netweaver 7.5,您可以在DD03L上使用简单的OPEN SQL选择 https://help.sap.com/doc/abapdocu_750_index_htm/7.50/en-US/abensql_expr_literal_abexa.htm

SELECT SINGLE @abap_true
       FROM DD03L
       WHERE tabname EQ @lv_table_name AND fieldname EQ @lv_column_name
       INTO @DATA(lv_exists).