2017-10-18 105 views
1

我试图使用IBM MQ:显示通道命令 - 语法错误

https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_7.5.0/com.ibm.mq.ref.adm.doc/q086040_.htm

我定义了一个名为渠道向MYMQ.SVRCONN显示IBM MQ通道,然而,这给了我一个语法错误:

处或附近低于命令段的端部检测到语法错误::
runmqsc 
DISPLAY CHANNEL MYMQ.SVRCONN 
5 : DISPLAY CHANNEL MYMQ.SVRCONN 

AMQ8405 - 显示通道

我得到同样的问题:

DISPLAY CHANNEL * 

任何建议为什么?

我努力理解这种语法:如果

>>-DISPLAY CHANNEL--(--generic-channel-name--)------------------> 

所以奖励积分,你可以解释如何语法的作品。

回答

2

()是所需语法的一部分。

在这些例子中,你给出的命令应该是:

DISPLAY CHANNEL(MYMQ.SVRCONN) 

DISPLAY CHANNEL(*) 

大多数MQSC命令有类似的语法:

<command> <object type>(<object name>) [optional parameters] 

举几个例子:

  1. DEFINE CHL(MYMQ.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('xyzuser')
  2. ALTER CHL(MYMQ.SVRCONN) CHLTYPE(SVRCONN) DESCR('Test channel')
  3. DISPLAY CHL(MYMQ.SVRCONN) MCAUSER

QMGR对象是对象类型并不需要在运行您连接到这些命令,因为要遵循一个对象名称是一个例外具体的队列管理器:

  1. DIS QMGR CHLAUTH CONNAUTH
  2. ALTER QMGR CHLAUTH(ENABLED)

有几件事情需要注意:

  1. IBM MQ总会折为大写任何未在单引号字符'包围。
  2. 某些DISPLAY命令默认情况下仅显示对象上所有参数的子集。您可以使用特殊参数ALL将其全部显示出来,或者您可以指定要显示的特定参数。
  3. DISPLAY命令也可以使用WHERE子句,例如:DIS CHL(*) WHERE(MCAUSER eq 'xyzuser') DESCR