MQCreateVtiRead() 函数会创建表,然后将其映射到 WMQ 管理的队列。
MQCreateVtiRead() 函数会创建绑定到由 service_name 指定的队列的表(使用 policy_name 中定义的服务质量策略)。如果从该函数创建的表中进行选择,将返回队列中的所有已落实消息,但不会从队列除去这些消息。如果没有任何消息可以返回,SELECT 语句将不返回任何行。对绑定表执行插入操作将把消息放入队列。
create table table_name (
msg lvarchar(maxMessage),
correlid varchar(24),
topic varchar(40),
qname varchar(48),
msgid varchar(12),
msgformat varchar(8));
using "gbasedbt".mq (SERVICE = service_name,
POLICY = policy_name,
ACCESS = "READ");
| 用途 | 自变量解释 |
|---|---|
| MQCreateVtiRead(arg1) | arg1 = table_name |
| MQCreateVtiRead(arg1, arg2) | arg1 = table_name
arg2 = service_name |
| MQCreateVtiRead(arg1, arg2, arg3) | arg1 = table_name
arg2 = service_name arg3 = policy_name |
| MQCreateVtiRead(arg1, arg2, arg3, arg4) | arg1 = table_name
arg2 = service_name arg3 = policy_name arg4 = maxMessage |
begin;
EXECUTE FUNCTION MQCreateVtiRead('VtiReadTest');
commit;
INSERT INTO VtiReadTest(msg) values ('QMessage');
select * from VtiReadTest;