首页 > 数据库 >ABAP 三种操作数据库的方法 OPEN SQL, EXEC SQL, ADBC

ABAP 三种操作数据库的方法 OPEN SQL, EXEC SQL, ADBC

时间:2022-12-06 15:02:10浏览次数:37  
标签:ADBC mara EXEC lo SQL result sql ref


OPEN SQL这里就不多说了,可以执行大部分DML语句,但是却不支持DDL,DCL,UNIT,也没办法执行数据内嵌的函数。

EXEC SQL 和 ADBC 是所谓的Native SQL,这种方式直接进入指定数据库,不涉及到DBI,这样就没有table buffer。

相对EXEC SQL来说,更推荐ADBC的方式执行native sql,这种方式的好处是更加容易追踪错误。

以下是实例,

data: lo_sql type ref to cl_sql_statement,

          lx_sql type ref to cx_sql_exception,

         lo_result type ref to cl_sql_result_set,

         lr_mara type ref to data,

         lt_mara type standard table of mara.

 

 ceate object lo_sql exporting con_ref = cl_sql_connection=>getconnection( 'ORA' ).

 lo_result = lo_sql->execute_query( |select * from MARA where mandt = {sy-mandt}|).

get reference of lt_mara into lr_mara.

lo_result->set_param_table( lr_mara ).

lo_result->next_package().

lo_result->close().

 

标签:ADBC,mara,EXEC,lo,SQL,result,sql,ref
From: https://blog.51cto.com/u_15903986/5916083

相关文章

  • PostgreSQL会话及阻塞相关常用SQL
    ====PostgreSQL===========select*frompg_settings;selectversion(),txid_current(),pg_backend_pid(),current_user,current_schema,current_timestamp;--......
  • mysqldump备份命令使用参数
    参数参数说明导出全部数据库。mysqldump-uroot-p--all-databases导出全部表空间。mysqldump-uroot-p--all-databases--all-tablespaces不导出任何表空间......
  • MySQL的数据表(DDL)操作
    表(Table)是数据库存储数据的主要形式,由行(Row)和列(Column)组成,类似于常见的电子表格。MySQL中的表与其他数据库的最大区别在于它们可以使用不同的存储引擎(StorageEngine)。......
  • mysql两种索引结构应用场景
    B-tree索引和Hash索引区别B+tree:B+树是一个平衡的多叉树,从根节点到每个叶子节点的高度差值不超过1,而且同层级的节点间有指针相互链接。在B+树上的常规检索,从根节点......
  • SQL Server Merge matched 再加其他条件的示例
    这里介绍使用临时表的方式进行Merge,额外的条件语句用红色标出:假设有一个字典表dic_dict第一步先创建临时表createtable#temp_source([code][varchar](20)COLLATE......
  • SQL Server自动备份并定时清理备份文件
    在我们现有的系统中数据库的重要性不言而喻,为了避免数据宕机或误操作造成的数据丢失情况的产生,定期对数据库进行备份是必须要做的工作,下面将介绍SQLServer自带的数据库备......
  • MySQL忽略大小写的注意事项
    一、背景在阿里的规范中,不允许超过2个JOIN的关联查询,故项目中需要将复杂SQL拆分二、问题目前MySQL5.7非特殊场景默认选择utf8mb4,排序选择utf8mb4_general_ci,MySQL8默认选择u......
  • Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0
    tomcat上部署项目时报错,可以执行一次clean,然后再install就可以了然后在网上开始各种搜索,出现的解决办法一大堆,但是一个都不行。最后,才发现猫腻,编译错误原因是项目内的tar......
  • Android实验十——使用SQLite数据库存储数据
    一、实验要求和目的掌握SQLite数据库的操作方法;掌握SQLiteOpenHelper类的使用。掌握Lsitview的使用。二、实验环境部署有AndroidStudio和AndroidSDK的主机;建议......
  • sqlserver恢复数据
    若出事故的你希望能通过本文来弥补之前的错误。那么在开始阅读本文之前请先确认误操作库之前是否有一次完整数据库备份,若没有请不要再往下看了本文全程的操作仅需10分钟左......