以下的文章主要是介绍IBM DB2通用数据库中实现会话间的警告之设计概述,在某些时候你是否正将你的数据库从Oracle数据库迁移至 IBM® DB2® Universal Database™?您是否认为可能会丢失 Oracle 的某个特殊功能?
DB2 UDB 就是这样一种十分灵活的数据库,它可以满足您的许多需要。在本文中,我将介绍一下如何实现一个称为警告的功能。警告用于允许多重会话之间的通信。
警告概述
警告是为在会话间传递消息而设计的。警告标识、会话标识和消息存储在表中(这里是 alerts.dbms_alert_info)。消息由一个会话发送再由另一个会话读取,这个过程由一个在指定表中设置的标志来控制。在设计参数(像列长度、主机变量长度、轮询时间间隔等)时需要了解 Oracle 到 DB2 的迁移情况。您可以根据需要增加警告名和消息长度的大小。
IBM DB2通用数据库中实现会话间的警告之设计概述
以下对象在实现类似 Oracle 具有的警告功能时都是必需的。所有对象都包含在本文的 下载部分中:
存储警告信息的表: alerts.dbms_alert_info
注册警告的存储过程: alerts.register
删除警告的存储过程: alerts.remove和 alerts.delete
发送警告消息的存储过程: alerts.signal
接收警告消息的存储过程: alerts.waitone和 alerts.waitany
实现延迟的 UDF: alerts.delay
实现会话标识的 UDF: alerts.session_id
您可以更改我的设计以满足自己的特殊要求。所有对象都使用了一个共同的模式,即警告。设计存储过程以便您可以扩展它们来捕获 SQLCODE、SQLSTATE 和 ERROR_MESSAGE。大量的异常处理在上面列出的所有存储过程中实现,但是这里并没有使用到。您可以取消样本代码中异常处理部分的注释然后再使用该部分。
它们也可以返回相应的返回码,以便用主语言实现必需的操作。游标可以在所有存储过程中实现,但是在一些地方您可能希望更改为 fullselect。所有警告对象都被授予了公共执行(Public execute)许可权。您应该使用 DBADM 或 SYSADM 权限创建所有这些对象。 以上的相关内容就是对IBM DB2通用数据库中实现会话间的警告之设计概述 的介绍,望你能有所收获。
上述的相关内容就是对IBM DB2通用数据库中实现会话间的警告之设计概述 的描述,希望会给你带来一些帮助在此方面。
【编辑推荐】