当前位置: 首页 > news >正文

SAP-增删改查

 查

REPORT  z_demo_database.TABLES: sflight.SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE '数据查询'.SELECT-OPTIONS: s_carrid FOR sflight-carrid,s_connid FOR sflight-connid.
SELECTION-SCREEN END OF BLOCK b1.START-OF-SELECTION.SELECT carrid connid fldate priceFROM sflightINTO CORRESPONDING FIELDS OF TABLE @DATA(lt_sflight)WHERE carrid IN @s_carridAND connid IN @s_connid.LOOP AT lt_sflight INTO DATA(wa_sflight).WRITE: / wa_sflight-carrid, wa_sflight-connid, wa_sflight-fldate, wa_sflight-price.ENDLOOP.

REPORT  z_demo_database_insert.TABLES: sbook.PARAMETERS: p_carrid TYPE sbook-carrid OBLIGATORY,p_connid TYPE sbook-connid OBLIGATORY,p_fldate TYPE sbook-fldate OBLIGATORY,p_bookid TYPE sbook-bookid OBLIGATORY,p_passname TYPE sbook-passname OBLIGATORY.START-OF-SELECTION.DATA: wa_sbook TYPE sbook.wa_sbook-carrid   = p_carrid.wa_sbook-connid   = p_connid.wa_sbook-fldate   = p_fldate.wa_sbook-bookid   = p_bookid.wa_sbook-passname = p_passname.wa_sbook-bookdate = sy-datum.wa_sbook-booktime = sy-uzeit.INSERT sbook FROM wa_sbook.IF sy-subrc = 0.WRITE: / '数据插入成功'.ELSE.WRITE: / '数据插入失败,错误码:', sy-subrc.ENDIF.

 改

REPORT  z_demo_database_update.TABLES: sbook.PARAMETERS: p_carrid TYPE sbook-carrid OBLIGATORY,p_connid TYPE sbook-connid OBLIGATORY,p_fldate TYPE sbook-fldate OBLIGATORY,p_bookid TYPE sbook-bookid OBLIGATORY,p_newstatus TYPE sbook-status OBLIGATORY.START-OF-SELECTION.DATA: wa_sbook TYPE sbook.SELECT SINGLE * FROM sbookINTO wa_sbookWHERE carrid  = p_carridAND connid  = p_connidAND fldate  = p_fldateAND bookid  = p_bookid.IF sy-subrc = 0.wa_sbook-status = p_newstatus.UPDATE sbook FROM wa_sbook.IF sy-subrc = 0.WRITE: / '数据更新成功'.ELSE.WRITE: / '数据更新失败,错误码:', sy-subrc.ENDIF.ELSE.WRITE: / '未找到匹配的数据记录'.ENDIF.

REPORT  z_demo_database_delete.TABLES: sbook.PARAMETERS: p_carrid TYPE sbook-carrid OBLIGATORY,p_connid TYPE sbook-connid OBLIGATORY,p_fldate TYPE sbook-fldate OBLIGATORY,p_bookid TYPE sbook-bookid OBLIGATORY.START-OF-SELECTION.DELETE FROM sbookWHERE carrid  = p_carridAND connid  = p_connidAND fldate  = p_fldateAND bookid  = p_bookid.IF sy-subrc = 0.WRITE: / '数据删除成功'.ELSE.WRITE: / '数据删除失败,错误码:', sy-subrc.ENDIF.

 查找数据

REPORT Z_ZFG_0616.TABLES: ZZFG_0320.START-OF-SELECTION." 定义内表和工作区
DATA: lt_employees TYPE STANDARD TABLE OF ZZFG_0320,ls_employee LIKE LINE OF lt_employees.SELECT * FROM ZZFG_0320 INTO TABLE lt_employees.LOOP AT lt_employees INTO ls_employee.WRITE: / '图书名称:', ls_employee-BOOK_NAME.
ENDLOOP.

 增加数据

REPORT Z_ZFG_0616.TABLES: ZZFG_0320.DATA: ls_employee TYPE ZZFG_0320.
DATA: lv_message TYPE string.ls_employee-BOOK_NAME = '大数据22'.INSERT INTO ZZFG_0320 VALUES ls_employee.
* 判断插入是否成功
IF sy-subrc = 0.lv_message = '数据插入成功'.
ELSE.lv_message = '数据插入失败'.
ENDIF.* 输出结果
WRITE: lv_message.

删除数据

REPORT Z_ZFG_0616.TABLES: ZZFG_0320.DATA: ls_employee TYPE ZZFG_0320.
DATA: lv_message TYPE string.ls_employee-BOOK_NAME = '大数据22'.DELETE FROM ZZFG_0320 WHERE BOOK_NAME = '大数据22'.* 判断插入是否成功
IF sy-subrc = 0.lv_message = '数据删除成功'.
ELSE.lv_message = '数据删除失败'.
ENDIF.* 输出结果
WRITE: lv_message.

修改数据

REPORT Z_ZFG_0616.TABLES: ZZFG_0320.DATA: ls_employee TYPE ZZFG_0320.
DATA: lv_message TYPE string.UPDATE ZZFG_0320SET BOOK_NAME = 'MySQL数据库'WHERE BOOK_NAME = 'MYSQL'.* 判断插入是否成功
IF sy-subrc = 0.lv_message = '数据修改成功'.
ELSE.lv_message = '数据修改失败'.
ENDIF.* 输出结果
WRITE: lv_message.

 


REPORT Z_ZFG_0616.TABLES: ZZFG_0320.SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.PARAMETERS:old_name TYPE string,new_name TYPE string.
SELECTION-SCREEN END OF BLOCK b1.DATA: ls_employee TYPE ZZFG_0320.
DATA: lv_message TYPE string.UPDATE ZZFG_0320SET BOOK_NAME = new_nameWHERE BOOK_NAME = old_name.* 判断插入是否成功
IF sy-subrc = 0.lv_message = '数据修改成功'.
ELSE.lv_message = '数据修改失败'.
ENDIF.* 输出结果
WRITE:/ lv_message.SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002.PARAMETERS:nt_name TYPE string.
SELECTION-SCREEN END OF BLOCK b2.DATA: ls2_employee TYPE ZZFG_0320.
DATA: lv2_message TYPE string.ls2_employee-BOOK_NAME = nt_name.INSERT INTO ZZFG_0320 VALUES ls2_employee.
* 判断插入是否成功
IF sy-subrc = 0.lv2_message = '数据插入成功'.
ELSE.lv2_message = '数据插入失败'.
ENDIF.* 输出结果
WRITE:/ lv2_message.DATA: lt1_employees TYPE STANDARD TABLE OF ZZFG_0320,ls1_employee LIKE LINE OF lt1_employees.SELECT * FROM ZZFG_0320 INTO TABLE lt1_employees.LOOP AT lt1_employees INTO ls1_employee.WRITE: / '图书名称:', ls1_employee-BOOK_NAME.
ENDLOOP.

相关文章:

  • 分布式数据库中间件-Sharding-JDBC
  • Some chunks are larger than 500 KiB after minification. Consider
  • 2025CVPR最佳论文系列
  • 机器学习实验报告4-Logistic 回归算法
  • Java + Spring Boot 后端防抖实现方案
  • Apache Iceberg与Hive集成:分区表篇
  • 鸿蒙智行5月全系交付新车破4.4万辆,销量再创新高
  • HarmonyOS 探秘手记:我在 “鸿蒙星球” 的第一天
  • 2 Studying《Arm A715 Technical Reference Manual》
  • Maven在依赖管理工具方面的内容
  • 向量外积与秩1矩阵的关系
  • 【项目实训】【项目博客#08】HarmonySmartCodingSystem系统前后端知识图谱与可视化实现(5.12-6.1)
  • Spring Cloud 所有组件全面总结
  • 传统数据仓库正在被 Agentic AI 吞噬
  • 快速取模指数算法:密码学的核心引擎
  • 正整数的正向分解
  • Git里面Stash Changes和UnStash Changes使用
  • ​​WSL2 (Ubuntu)​​ 中安装 ​​CUDA 12.9​​ 的详细教程
  • Spring Boot Web开发
  • ansible变量
  • 南阳网站开发公司/郑州seo使用教程
  • 学校网站建设的作用/百度如何做广告
  • 上海优化网站/技能培训班有哪些课程
  • 宣城网站推广/十大搜索引擎排行榜
  • 毕业论文引用网站数据怎么做脚注/东莞seo公司
  • 网站商城建设多少钱/seo算法优化