MQRead() 函数会从 WMQ 返回消息,但不从队列除去该消息。
MQRead() 函数会从 service_name 指定的 WMQ 队列返回消息(使用 policy_name 中定义的服务质量策略)。此函数不会从与 service_name 关联的队列除去消息。如果指定了 correl_id,将返回具有匹配的相关标识的第一条消息。如果不指定 correl_id,将返回队列的第一条消息。函数的结果是类型为 LVARCHAR 的字符串。如果未返回任何消息,此函数将返回 NULL。此函数仅读取已落实的消息。
用途 | 自变量解释 |
---|---|
MQRead() | 无自变量 |
MQRead(arg1) | arg1 = service_name |
MQRead(arg1, arg2) | arg1 = service_name arg2 = policy_name |
MQRead(arg1, arg2, arg3) | arg1 = service_name arg2 = policy_name arg3 = correl_id |
begin; EXECUTE FUNCTION MQRead(); commit;
insert into my_order_table VALUES(MQRead());
begin; EXECUTE FUNCTION MQRead('MYSERVICE'); rollback;
insert into my_order_table VALUES(MQRead('MYSERVICE'));
begin; EXECUTE FUNCTION MQRead('MYSERVICE','MYPOLICY'); commit;
insert into my_order_table VALUES(MQRead('MYSERVICE', 'MYPOLICY'));
begin; EXECUTE FUNCTION MQRead('MYSERVICE','MYPOLICY', 'TESTS'); commit;
insert into my_order_table VALUES(MQRead('MYSERVICE', 'MYPOLICY', 'TESTS'));