云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

负载均衡_腾讯云2_最新活动

小七 141 0

在本博客中,我将介绍SAP Advanced SQL Migration tool如何为任何受支持的SAP目标数据库中都不存在的Oracle功能执行迁移。通过开发一组特定的运行时组件(详见RTCs)来模拟Oracle行为,实现了此功能。

DBMS\U OUTPUT是Oracle的内置软件包,下载返利,允许您显示PL/SQL块(存储过程、函数、触发器等)的输出消息或调试信息,它与一个内部缓冲区一起工作,Oracle客户机可以在其中向其发送消息并从中恢复消息。此包提供的API包括以下子程序:

需要注意的一点是,一些oracle客户端可以通过特定的选项绕过此oracle功能提供的"缓冲"行为,例如,SQL*Plus允许您启用DBMS\u OUTOUT并立即从缓冲区恢复消息,而无需将"serveroutput"设置为"on":

SQL>将serveroutput设置为onSQL>调用DBMS_输出输出线(‘你好’);你好调用已完成。

SQL>

注意:在这种情况下,PUT\u行将立即"打印"到客户端控制台。

Oracle DBMS\u输出功能已使用一组存储过程在每个受支持的SAP Advanced SQL Migration targets数据库(SAP HANA、SAP ASE、SAP IQ和SAP SQL Anywhere)中实现,这个集合由一些内部过程(转换后的代码不直接使用)和七个过程组成,大数据分析数据库,其中一个对应于Oracle在其API中提供的每个子程序。Oracle子程序与目标过程的映射描述如下,买服务器云,所示的过程定义与SAP HANA对应:

注:SAP SQL Anywhere和SAP IQ的过程定义完全相似,只是有一点不同,淘客是什么意思,名称的前缀是"xp\u"而不是"sp\u"

这些存储过程是由SAP Advanced SQL Migration提供的,并且该工具已经为您使用它们执行此转换,使用DBMS\u输出包转换PSQ/SQL代码不需要手动干预。

模仿Oracle"缓冲"/"非缓冲"实现的方法是要使用"sp\u dbmtk\u enable\u buffered\u output"中包含的"mode"参数,默认情况下,它被配置为"print"什么是缓冲区旁路,如果将该mode参数设置为"buffer",则得到"buffered"行为:

C:\>hdbsql-u SYSTEM-p***-n:30015-d SP4-m-cgo-separatorownline欢迎使用SAP HANA数据库交互终端。键入:\h以获取有关命令的帮助\q退出

hdbsql SP4=>呼叫sapdbmtk.sp\u dbmtk\u启用缓冲\u输出("打印")>去吧0行受影响(总时间29590毫秒;服务器时间14172毫秒)

hdbsql SP4=>调用sapdbmtk.sp\u dbmtk\u缓冲输出\u写入("你好")>去吧铸造("HOLA"为VARCHAR(10000))"你好"选择1行(总时间114418毫秒;服务器时间5828 usec)

注意:DBMS\U OUTPOUT还转换为SAP ASE、SAP SQL Anywhere和SAP IQ,云服务器商,具有类似的RTC。