Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » QAnywhere » QAnywhere 参考 » QAnywhere SQL API 参考 » 消息属性、标头和内容 » 消息属性

 

ml_qa_getpropertynames

检索指定消息的属性名称。

参数
说明 注释
1 消息 ID VARCHAR(128)。可从 ml_qa_createmessage 或 ml_qa_getmessage 获取消息 ID。
注释

此存储过程将打开一个涉及指定消息所有属性名称的结果集。消息 ID 参数必须是已接收消息的消息 ID。

该结果集是一个类型为 VARCHAR(128) 的单列,其中每行都包含一个消息属性的名称。将不返回 QAnywhere 保留属性名称(前缀为 "ias_" 或 "QA" 的属性名称)。

接收消息后就可以读取此属性,一直到执行回退或提交;执行回退或提交后就不能再读取此属性。

另请参见
示例

下面的示例对消息 ID 为 msgid 的消息的整个属性名称结果集声明一个游标。然后获取地址为 clientid\queuename 的消息;接着打开一个游标访问该消息的属性名称;最后读取下一个属性名称。

begin
 declare prop_name_cursor cursor for
  call ml_qa_getpropertynames( @msgid );
 declare @msgid varchar(128);
 declare @name varchar(128);

 set @msgid = ml_qa_getmessage( 'clientid\queuename' );
 open prop_name_cursor;
 lp: loop
  fetch next prop_name_cursor into name;
  if sqlcode <> 0 then leave lp end if;
  ...
 end loop;
 close prop_name_cursor;
end