如何通过Oracle游标直接操作Oracle系统表Oracle认证考试

文章作者 100test 发表时间 2009:04:30 03:58:18
来源 100Test.Com百考试题网


  在ABAP编程中,有时候需要利用Native SQL操作数据库表(自定义和非业务数据的表,业务数据表我的建议还是应该通过SAP提供的类、函数,BAPI等技术操作)。下面的例子是通过游标操作Oracle的系统表的代码,供大家参考。
  *------------------------------------*
  * Read information about partitions of a table
  *------------------------------------*
  FORM get_partition_info
  USING
  i_tablnm TYPE rsd_tablnm
  CHANGING
  e_ts_part_info TYPE rsdu_ts_part_info.
  DATA:
  l_s_part_info TYPE rsdu_s_part_info.
  * this works only for Oracle
  CHECK sy-dbsys = ORACLE.
  EXEC SQL.
  open csr for
  0select partition_name, high_value
  from user_tab_partitions
  where table_name = :i_tablnm
  ENDEXEC.
  DO.
  EXEC SQL.
  fetch next csr into :l_s_part_info-partition_name,
  :l_s_part_info-high_value
  ENDEXEC.
  IF sy-subrc <.>. 0.
  EXIT.
  ENDIF.
  * Special treatment of upper limit (highvalue) in Oracle
  IF l_s_part_info-high_value EQ MAXVALUE.
  l_s_part_info-high_value = rsdu_c_max_value.
  ENDIF.
  INSERT l_s_part_info INTO TABLE e_ts_part_info.
  ENDDO.
  EXEC SQL.
  close csr
  ENDEXEC.
  ENDFORM. " GET_PARTITION_INFO
  更多优质资料尽在百考试题论坛 百考试题在线题库 oracle/认证更多详细资料

相关文章


oracle认证:实战Oracle数据库备份与恢复Oracle认证考试
实战Linux环境配置DBD:Oracle模块Oracle认证考试
如何通过Oracle游标直接操作Oracle系统表Oracle认证考试
Oracle数据库与SQLServer数据库镜像对比Oracle认证考试
oracle认证:Oracle数据库备份恢复最佳实践Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛