Native SQL的使用

  OPEN SQL也不是万能的,存在一定的局限性。例如后台数据库为Oracle,对数据表中某个字段大小写是不固定的,若以这个字段为查旬条件,一般Oracle处理方法是使用Upper /Lower函数据将被查询字段都转换为大、小定以固定查询条件,但OPEN SQL无法实现此功能,只有借助于Native SQL. 不过,Native SQL无法直接身内表直接传递所有值,可以通过调用SubRouting的方式对内表进行APPEND操作。


DATABEGIN OF T_ORDSUM OCCURS 0,
      AUFNR LIKE AFPO-AUFNR,
      WEMNG LIKE AFPO-WEMNG,
  END OF T_ORDSUM.

EXEC SQL Performing AppendSqlData.
  SELECT aufnr wemng
    INTO :t_ordsum-aufnr
          t_ordsum-wemng
    FROM afpo
    WHERE charg l_str
    OR upper(23mpfl_str
endexec.

LOOP AT T_ORDSUM.
  WRITET_ORDSUM.
ENDLOOP.

*&---------------------------------------------------------------------*
*&      Form  AppendSqlData
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM APPENDSQLDATA.
  APPEND T_ORDSUM.
ENDFORM.                    "AppendSqlData

Native可以实现对DataBase存储过程的调用以及游标的操作。

原文地址:https://www.cnblogs.com/sanlly/p/3246203.html