SQLUTB UNLOAD

SQLUTB UNLOAD は、DBMS 内のテーブルからデータをアンロードして、出力データ セット ファイルに格納します。SQLUTB UNLOAD を使用して、テーブルからすべての行をアンロードしたり、特定の条件を満たす行 (提供されたフィールド仕様リストから選択した行など) のみをアンロードしたりすることができます。出力データ セットは、エンコーディングとフォーマットの両方において z/OS DB2 と互換性があり、SQLUTB LOAD への入力として使用できます。

重要: SQLUTB LOAD の日付形式を構成して、入力データセットの日付値の形式を指定できます。詳細については、「mbdtconfig コマンド」を参照してください。

SQLUTB UNLOAD の実行

SQLUTB UNLOAD は、DSNUTILB LOAD と似ています。SQLUTB UNLOAD カードを JCL にインクルードし、Enterprise Developer JCL プロジェクトから、または Enterprise Server の JES CONTROL 機能を使用して JCL を直接サブミットすることで、それを実行します。JCL 構文は、z/OS DB2 互換である必要があります。

次に、UNLOAD カードを使用した JCL の例を示します。

//ULEMP001  JOB CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID,REGION=0M
//DELETE  EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN    DD *
  DELETE MCS.UNLOAD.ULEMP001
  SET    MAXCC=0
//DSNUTILB EXEC PGM=HCOUTILB,PARM='HCOD,ULEMP001'
//SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SORTOUT  DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SYSPRINT DD SYSOUT=*
//UTPRINT  DD SYSOUT=*
//SYSPUNCH DD SYSOUT=*
//SYSREC   DD DSN=MCS.UNLOAD.ULEMP001,DISP=(MOD,CATLG),
//            UNIT=SYSDA,SPACE=(CYL,(1,1)),
//            DCB=(RECFM=VB,LRECL=107,BLKSIZE=6500)
//SYSIN    DD *
   UNLOAD DATA FROM TABLE [DSN8910].[EMP] EBCDIC
/*                                                                      
//
//         PARM='&SYSTEM,&UID,&UTPROC' 
//*STEPLIB  DD   DSN=&LIB,DISP=SHR    
//* 
//SYSPRINT DD   SYSOUT=* 
//UTPRINT  DD   SYSOUT=* 
//SYSUDUMP DD   SYSOUT=*

ここで、HCOD はデータベース接続の ODBC XAR ID であり、SQLUTB はプログラム HCOUTILB のエイリアスとして確立されており、MCS.UNLOAD.ULEMP001 はカタログ化された出力データ ファイルです。

DB2 for z/OS DSNUTILB UNLOAD とは対照的に、SQLUTB UNLOAD の出力のデフォルトのコード セットは EBCDIC ではなく、ASCII です。また、デフォルトのレコード形式 RECFM は FB です。デフォルトの RECFM を SYSREC 定義の DCB でオーバーライドできます。

UNLOAD オプション

サポートされている仕様およびオプション
  • ASCII – デフォルトのコード セット
  • EBCDIC – 必要に応じてデフォルトの ASCII をオーバーライドします。
  • MAXERR
  • NOPAD
  • NOSUBS
  • PUNCHDDN
  • PART (DB2 LUW 専用)
  • TABLESPACE – SQL Server には適用されません。
  • UNICODE – コード セット
  • UNLDDN
サポートされていない仕様およびオプション
  • CHARDEL
  • COLDEL
  • CCSID
  • DECFLOAT_ROUNDMODE
  • DECPT
  • DELIMITED
  • FLOAT IEEE
  • FLOAT S390
  • FORMAT INTERNAL
  • FROMCOPY
  • FROMCOPYDDN
  • LIST
  • PART (DB2 LUW を除くすべての DBMS 用)
  • SHRLEVEL
サポートされている FROM TABLE オプション
  • FIELD SPECIFICATION
  • HEADER
  • POSITION
  • STRIP
  • TRUNCATE
  • WHEN
サポートされていない FROM TABLE オプション
  • LIMIT
  • SAMPLE
サポートされている TABLE FIELD 型
  • BIGINT
  • BINARY
  • CHAR
  • CINSTANT
  • DATE EXTERNAL
  • DECIMAL (PACKED)
  • DECIMAL EXTERNAL
  • DOUBLE
  • FLOAT EXTERNAL
  • FLOAT
  • GRAPHIC
  • INTEGER EXTERNAL
  • INTEGER
  • REAL
  • SMALLINT
  • TIME EXTERNAL
  • TIMESTAMP EXTERNAL
  • VARBINARY
  • VARCHAR
  • VARGRAPHIC
サポートされていない TABLE FIELD 型
  • BLOB
  • CLOB
  • DBCLOB
  • GRAPHIC EXTERNAL
  • ROWID
注: To ensure proper parsing of SYSIN, do not include the tab character (ASCII decimal character code 9; EBCDIC decimal character code 5) in its contents. When parsed, the tab character could cause spurious, unintended errors.