- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MB数据库输入节点
DatabaseInput Sample
例子位置:WebSphere Message Broker Version Product overview Samples Application samples
该例子是MB自带的例子,名字叫DatabaseInput Sample,下面简单说测试过程和测试过程中遇到的问题以及解决方法。具体详细信息参考帮助文档。
例子简要信息:对数据库的监控主要是通过监测事件表,这个事件表是用来存储对业务表的各种操作,表字段可以随意,也可以按照例子说的建表,但是有几个必要的字段必须有。这个事件是怎么存进去的呢?是通过触发器,对要监控的表建立相应触发器,记录对表的相应操作。DatabaseInput节点的作用就是监控事件表,可以设置监控频率,默认是5。
运行例子的时候首先是建数据库,然后是建表并建立触发器,SQL例子都有,拷贝出来就可以直接用,注意DB2CMD切到脚本的文件夹。建好库然后是导入例子,导入的例子并不能直接使用,需要做修改(这个问题折腾了一天)。需要把注释的语句都拿出来具体有三处。代码的位置是DatabaseInput.esql中灰色的部分,这部分的开头是解释,没有任何意义,我把需要拿出来的几句话贴出来
ReadEvents方法中的:
SET NewEvents.Event[] = SELECT DBINPUT_EVENTS.EVENT_ID AS Key,
DBINPUT_EVENTS.EVENT_ID AS Usr.EVENT_ID,
DBINPUT_EVENTS.OBJECT_VERB AS Usr.OBJECT_VERB,
DBINPUT_EVENTS.OBJECT_KEY AS Usr.OBJECT_KEY
FROM Database.DBINPUT_EVENTS; BuildMessage方法中的:
SET Root.DataObject.ns:DBINPUT_CUSTOMER[] =
SELECT DBINPUT_CUSTOMER.PKEY,
DBINPUT_CUSTOMER.FIRSTNAME,
DBINPUT_CUSTOMER.LASTNAME,
DBINPUT_CUSTOMER.CCODE
FROM Database.DBINPUT_CUSTOMER
WHERE DBINPUT_CUSTOMER.PKEY = DispatchedEvent.Usr.OBJECT_KEY; EndEvent方法中的:
DELETE FROM Database.DBINPUT_EVENTS
WHERE DBINPUT_EVENTS.EVENT_ID = DispatchedEvent.Usr.EVENT_ID; 下面是对DatabaseInput.esql的翻译,就是把这个翻译了一般才找到了例子不能运行的原因。如果看着不舒服,可以拷回toolkit中看。
DECLARE ns1 NAMESPACE http://dbinput/db2admin;
/*
* This DatabaseEvent module implements the ESQL code invoked from a DatabaseInput node to handle
* events as they move through the states of New-Ready-Dispatched-Complete.
* 此数据库事件模块采用调用自数据库输入节点的ESQL代码,用于处理新建-就绪-分配-完成等过程中发生的事件。
* NOTE: Events that result in unhandled exceptions in the message flow are moved to the Failed
* state. Unhandled means either that the catch terminal was not wired, or that the catch
* terminal threw an exception. If an exception is unhandled, the transaction is rolled back.
* If the exception is handled, even if it is handled on the catch termi
您可能关注的文档
- lesson 14 IO interrupt.ppt
- Lesson 14 Spectrum Analyzers电子技术专业英语教程.ppt
- Lesson 25 Choosing the right core.ppt
- Lesson 3 Preparing for the Customer Meeting (VSP - MGMT 5).docx
- lesson 3 Regional Economic Integration.ppt
- lenze9300_伺服基础培训.ppt
- Lesson0微机原理及应用.ppt
- Levis..doc
- Lexical features.ppt
- LGT8F0XA系统初始化与时钟管理.doc
- 国开景区管理作业2试题及答案.pdf
- 国开景区管理作业1-4试题及答案.pdf
- 河南开放大学本科《地域文化(本)》作业练习1-3试题及答案.pdf
- 2024年大型游乐设施操作证考试题库及答案很全.pdf
- 2024年门座式起重机司机考试题库及答案.pdf
- 2022-2023学年河北省衡水市武强中学高二(下)期末数学试卷【答案版】.docx
- 2022-2023学年河北省保定市崇德实验中学高二(下)期末数学试卷【答案版】.docx
- 江西省2017年中小学教师招聘考试高中化学试卷及答案.docx
- 2024年河北省八年级中考生物真题(解析版).docx
- 2024年南阳市社会保险中心(唐河县企业养老保险分中心)(参公)一级科员招录1人《行政职业能力测验》高频考点、难点(答案详解版).docx
文档评论(0)