DSN 指挥(TSO)

TSO命令DSN启动DSN会话。

有关可在 TSO 命令 DSN 下发出的命令列表,请参阅 Db2 命令

DSN 子命令

DSN命令有以下子命令:

DSN子命令 描述
ABEND DSN子命令ABEND使DSN会话以中止完成代码 X'04E' 和原因代码 X'00C50101' 终止。
重要: 更改开始ABEND 子命令仅用于诊断目的,只能在 IBM 支持部门的指导下使用。 仅用于诊断DSN或 Db2 的问题。更改结束
BIND PACKAGE DSN子命令BIND PACKAGE用于创建应用程序包。 Db2 在目录表中记录软件包的描述,并将准备好的软件包保存在目录中。 更改开始BIND PACKAGE 还会删除已淘汰的包的副本。更改结束
BIND SERVICE BIND SERVICE (DSN) 子命令用于构建一个代表 Db2 REST 服务的应用程序包。
BIND PLAN DSN子命令BIND PLAN用于构建应用程序计划。 所有 Db2 程序都需要一个应用程序计划来分配 Db2 资源,并支持运行时提出的SQL请求。
BIND QUERY DSN子命令BIND QUERY从DSN_USERQUERY_TABLE的每一行读取语句文本、默认模式以及一组绑定选项,并从相关的EXPLAIN表行读取信息。当LOOKUP(NO)生效时, Db2 会将相关数据插入到特定的目录表中。
FREE PACKAGE FREE PACKAGE 子命令可用于删除特定版本的软件包、所有版本的软件包或整个软件包集合。
FREE SERVICE FREE SERVICE 子命令用于删除代表 Db2 REST服务的应用程序包。
FREE PLAN FREE PLAN 子命令从 Db2 中删除应用程序计划。
FREE QUERY FREE QUERY 子命令用于从一个或多个查询中删除特定目录表中的行。 如果动态语句缓存中有任何指定的查询,FREE QUERY 会将其从动态语句缓存中清除。
更改开始FREE STABILIZED DYNAMIC QUERY更改结束 更改开始 FREE STABILIZED DYNAMIC QUERY 命令从某些目录表中删除一个或多个稳定的动态查询。 如果指定的查询语句存在于动态语句缓存中, FREE STABILIZED DYNAMIC QUERY 还会从动态语句缓存中清除这些语句。更改结束
DCLGEN (DECLARATIONS GENERATOR) 声明生成器(DCLGEN)会为目录中指定的表或视图生成SQL DECLARE TABLE语句,以及 COBOL、 PL/I 或C数据声明。
REBIND PACKAGE 当您对应用程序包进行了影响包但未更改程序中SQL语句的更改时,DSN子命令REBIND PACKAGE会重新绑定该应用程序包。
REBIND PLAN 当您对计划(如软件包列表)的属性进行更改时,DSN 子命令 REBIND PLAN 会重新绑定该计划。
REBIND TRIGGER PACKAGE 更改开始DSN子命令REBIND TRIGGER PACKAGE用于为基本触发器重新绑定一个包。 您可以通过查询 SYSIBM.SYSTRIGGERS 目录表来识别基本触发器。 SQLPL列中的空白值表示基本触发器。 对于高级触发器,请使用REBIND PACKAGE命令。更改结束
RUN DSN子命令RUN执行应用程序,其中可能包含SQL语句。
SPUFI DSN子命令SPUFI使用文件输入执行SQL处理器。

在DSN会话中,您还可以输入 Db2 命令,但START除外 DB2Db2 命令必须以连字符 (-) 开头。有关 命令的详细说明,请参阅 Db2 Db2 命令 下名称以识别字符 -开头并以 (Db2)结尾的命令。

您也可以用星号(*)开头输入评论。

在DSN会话期间,您还可以发出TSO命令,但FREE、RUN、TEST和TIME除外。 要使用TSO TEST调试应用程序,请使用DSN命令运行它;例如:
TEST '
prefix
.SDSNLOAD(DSN)' CP 
重要: 更改开始ABEND 子命令仅用于诊断目的,只能在 IBM 支持部门的指导下使用。 仅用于诊断DSN或 Db2 的问题。更改结束

在DSN会话期间,百分比命令无法识别,只有TSO命令处理器支持。

环境 DSN

DSN会话在TSO下以前台或后台模式运行。 当您在后台运行时,系统不会提示您进行更正或提供其他所需信息。

您也可以从前台或后台运行的CLIST启动DSN会话。

数据共享范围 :会员

授权 DSN

DSN命令不需要任何授权,但大多数子命令需要授权。

语法 DSN

阅读语法图跳过可视化语法图DSNSYSTEM(DSN子系统名称组附件名称子组-附件名称)RETRY(0整数)TEST( 整数)GROUP(YESNO)ASUSER( userid)

选项说明 DSN

以下选项均非必填项。
SYSTEM
(子系统名称
指定 Db2 子系统的名称。
(群组附件名称
指定数据共享组的组附件名称。
(子组-附件-名称
指定数据共享组的子组附件名称。

默认值SYSTEM( DSN ) 该值可在 Db2 安装过程中修改。

重试 (整数
指定当DSN发出时,如果 Db2 未启动或已达到批处理连接的最大数量,则应尝试与 Db2 子系统连接的额外次数(整数)。 重试间隔时间为30秒。

默认值 为RETRY (0 )。 最大重试次数为120次。

测试 (整数
指定模块名称的最后两位数字(整数),以便追踪单个DSN模块。 指定大于100的数字,以追踪所有DSN模块。 DSN跟踪信息被写入TSO SYSTSPRT DD语句,也可以选择写入DSNTRACE DD语句。
GROUP
(是的)
指定当系统不活动时,考虑组附件处理。
(否)
指定不考虑组附加处理。
ASUSER (用户ID
指定一个用户ID,用于关联当前DSN会话的可信连接。

如果主授权ID和工作名称与 Db2 中定义的可信上下文匹配,则可建立可信连接。 您指定为 ASUSER 的用户 ID 将通过标准授权和连接退出处理来获取主 ID 和辅助 ID。 如果主授权ID被允许使用无需身份验证的可信连接,则 Db2 将为ASUSER用户ID建立可信连接。 主授权ID、任何辅助授权ID以及与ASUSER用户ID关联的任何角色现在都适用于可信连接。

如果您在 ASUSER 选项中指定的用户 ID 关联的授权 ID 不允许使用可信连接或需要身份验证信息,连接请求将失败。

Db2 仅在DSN会话期间保留ASUSER值。

使用说明 DSN

开始 DSN 会话: 发出 DSN 命令以开始 DSN 会话,这允许您输入 DSN 子命令。 会议遵循以下规则:
  • 在前台操作中,终端会提示您输入字符串DSN。 在后台模式下,您的输入将从SYSTSIN数据集中读取。
  • 除了在 DCLGEN 命令中分隔的表名,小写字母输入将自动转换为大写。
  • 如果指定了任何子命令的重复关键字,则仅处理最后一个关键字。 例如,如果 MEMBER( dbrm-member-name1 )和MEMBER( dbrm-member-name2 )都指定了BIND PLAN,则 Db2 只会收到后者MEMBER( dbrm-member-name2 )。
  • 如果在DSN会话期间按下ATTENTION( PA1 ),且在TSO用户配置文件中指定了PROMPT,则会出现 DSNE005 消息: EXECUTION IS INTERRUPTED, ENTER C TO CANCEL, OR ANY OTHER REPLY TO RESUME THE subcommand SUBCOMMAND

    如果输入 C,当前子命令将被取消,当前 Db2 连接将终止;将建立一个新的连接,并出现另一个数据源名称(DSN)提示。 除“注意”以外的任何其他回复都会导致当前子命令从中断处继续执行。

    如果从CLIST启动DSN会话,或者在DSN下执行CLIST,则必须在CLIST中指定CONTROL PROMPT,以便接收消息 DSNE005。

  • 在DSN会话期间处理完命令后,系统会提示您输入。 这个循环会一直持续到您结束会话。
  • 您可以通过以下操作之一结束会话:
    • 发出END子命令。 控制权移交给了TSO。
    • 按下“注意”键,再次按下“注意”键即可回复信息。
    • 再发出一个DSN命令。 旧的一届结束,新一届开始。

DSN 返回代码处理 :在 DSN 会话结束时,寄存器 15 包含会话中任何 DSN 子命令或使用 RUN 子命令运行的任何程序使用的最高值。 您的运行环境可能会将该值格式化为返回代码。 然而,价值并非源自DSN。

使用TSO和 DB2I: 建立可信环境 , DB2I 在TSO下运行,使用 ISPF 服务。 DB2I 设施为SPUFI和DCLGEN等工具以及准备 Db2 程序和装订计划与包等任务提供了一个 ISPF 前端。 DB2I 默认面板中包含“以用户身份”字段。 使用“AS USER”字段指定当前会话中与可信连接关联的授权名称。 当TSO登录ID与系统授权ID和为可信环境定义的工作名称匹配时,可信连接即建立。 在输入 DB2I 时,ASUSER字段始终为空。 如果您在 AS USER 字段中输入一个值,则该值将通过 DSN (TSO) 命令的 ASUSER 选项传递给所有 TSO 附加(DSN)调用。

更改开始监视器的附加设施: 对于监视器等长期运行的程序,请使用可编程的附加设施(如 CAF 或 RRSAF),而不是使用 Db2 TSO 附加设施。 TSO附件设施并非为长期项目而设计。 使用TSO附件功能执行此类程序可能会导致存储或恢复问题。更改结束

例子 DSN

示例:启动一个DSN会话,并多次重试
以下命令启动数据源名称(DSN)会话。 如果尝试连接 Db2 失败,则最多重试五次,每次间隔30秒。
DSN SYSTEM (DB2) RETRY (5)
示例:启动DSN会话、运行程序并结束DSN会话
以下示例显示了启动DSN会话、运行程序和结束DSN会话的命令。
TSO prompt :  READY
USER enters:  DSN SYS(SSTR)
DSN prompt :  DSN
USER enters:  RUN PROGRAM(MYPROG)
DSN prompt :  DSN
USER enters:  END
TSO prompt :  READY