DSNUTILB, используя опцию PRESORTED - PullRequest
0 голосов
/ 29 апреля 2020

Я работаю над изменением элемента параметра DSNUTILB, чтобы разрешить предварительную сортировку входных данных для повышения эффективности. Однако возникают проблемы с синтаксисом при включении опции PRESORTED.

На данный момент у меня есть; ЗАГРУЗИТЬ ДАННЫЕ ЗАГРУЗИТЬ ЗАГРУЗИТЬ ЗАКАЗ ПРЕЗОРТИРОВАННОГО ЗАКАЗА №

и получить сообщение об ошибке «НЕПРАВИЛЬНЫЙ ОПЕРАНД» ЗАГРУЗИТЬ КЛЮЧ «СЛОВО» (пробовал различные перестановки)

у кого-нибудь есть представление о правильном синтаксисе?

спасибо

1 Ответ

0 голосов
/ 29 апреля 2020

Не думаю, что PRELOAD является допустимым ключевым словом. Здесь - это синтаксическая ссылка для утилиты LOAD. Я предполагаю, что здесь вы используете DB2 для z / OS. Моя ссылка для версии 12.

Возможно, вы захотите иметь SYSIN, который выглядит примерно так:

LOAD DATA INDDN SYSREC01
KEEPDICTIONARY  
RESUME NO REPLACE  
PRESORTED YES  
ENFORCE CONSTRAINTS
LOG NO NOCOPYPEND                                                    
EBCDIC CCSID(0037)                                                    

INTO TABLE abc.xyx (
   ... table definition here...
)

Вы можете использовать утилиту UNLOAD для создания SYSIN для вас с что-то вроде:

UNLOAD  TABLESPACE  
EXECUTE NO                     
OPTIONS LOADOPT (                                  
 KEEPDICTIONARY 
 RESUME NO REPLACE  
 PRESORTED YES    
 ENFORCE CONSTRAINTS 
 LOG NO NOCOPYPEND
)            
LOADINDDN YES  LOCK NO  QUIESCE NO                 
  SELECT * FROM abc.xyz
FORMAT  DSNTIAUL  
LOADDDN SYSCTL01  
OUTDDN SYSREC01

Это запишет оператор загрузки в набор данных SYSREC01.

...