服务器 频道

定制DB2通用数据库命令行处理器(下)

【IT168 服务器学院】受支持的变量如 表 1所示。

  表 1.受 CLP 支持的运行时变量

变量 运行时值
%ia 如果存在实例连接,则为当前实例连接的授权标识(authid);否则为空字符串。
%i 如果实例连接存在,则为当前所连接的实例的本地别名;如果不存在本地实例连接,则为 DB2INSTANCE 或 DB2INSTDEF 注册表变量的值;否则,为空字符串。
%da 如果存在数据库连接,则为当前数据库连接的授权标识;否则为空字符串。
%d 如果数据库连接存在,则为当前连接的数据库的本地别名;否则为 DB2DBDFT 注册表变量值;再不然则为空值。
%n 换行符。

  例如,要设置 DB2 UDB CLP 提示符,使其解析为:

  Instance , Database ):

  输入以下命令:

db2set db2_clpprompt=" (Instance:%I, Database: %d):"

  您可以输入 db2set all 命令来验证 DB2 UDB 概要注册表中的该项设置。

  图 7向您显示了这一命令序列,包括在以交互模式启动 CLP 会话之后的显示结果。

  图 7. 设置 DB2_CLPPROMPT 并验证其使用

 

  
 

请注意此例中,我用了 未处于交互模式的 DB2 UDB CLP,这就是为什么交互模式在同一个窗口中被启动的原因(我这样做是让您体会一下调用 DB2 UDB CLP 的不同方式)。

  图 7 中,您会看到 变量没有值。该变量之所以为空是因为在我的环境中没有数据库连接或者定义的缺省数据库。

  如果您连接到数据库,这个变量就会更新,如 图 8所示。

  图 8. 出现在提示符上的实例名和数据库名

 

  如果我从这个数据库断开,这个定制的字符串会反映出这一操作。如果我接着再连接到不同的实例,在 DB2 UDB CLP 中也会得到动态的反映,如 图 9所示。

  图 9. 连接到新的 DB2 UDB 实例时,CLP 动态进行更新

 

  
 

0
相关文章