2017-01-10 5 views
0

У меня есть ключевое слово DDS с уникальным. Мне нужно удалить, что есть способ, которым я могу избавиться без изменения источника. В любом случае, как использование SQL на объекте и может удалить уникальный ключ?AS400 - DDS Уникальное ключевое слово

Я пробовал ALTER стол, но он спрашивает имя ограничения, которого у меня нет. Мне кажется, что определение UNIQUE ограничений - это diff, а затем дает UNIQUE ключевое слово в источнике.

Я собираюсь прокомментировать уникальное ключевое слово и повторное продвижение файла. Я сделал это и после компиляции DDS, просто запустил программу и выполнил ее без перекомпиляции программы.

ответ

-1

Оставьте уникальный ключ, используя SQL. Чтобы найти имя ограничения использования ниже

select * from SYSCST    
where CONSTRAINT_SCHEMA = 'schema' 
and table_name = 'table'; 
+0

Записей не найдено ..... – MAS400

+0

@ MAS400 Вот что я сделал, добавила столбец к таблице. Затем был запущен запрос на обновление, чтобы скопировать данные из столбца, который был уникальным. Отбросил уникальный столбец. Но я думаю, вы хотите сохранить имя столбца, тогда вам придется повторить процесс со старым именем. Лично я чувствую, что это много усилий, а не просто повторное продвижение DDS – uSeruSher

+0

Спасибо Vijay .... Что я думаю Когда у нас есть ключевое слово DDS UNIQUE и компилируется PF, он не будет создавать какую-либо запись в Системной таблице, говоря, что это ограничение имеет был добавлен в файл и может быть ссылкой ..... Просто пытаюсь найти другие способы, если я могу избежать повторного продвижения DDS ... – MAS400

1

Удаление UNIQUE ключевое слово из источника DDS не изменяет формат файла ID и, следовательно, не требует каких-либо программ перекомпилировать. Однако у вас может быть программная логика, которая ожидает, что записи будут уникальными, что потребуется скорректировать.

Вы также можете использовать CHGPF FILE(MYDATALIB/MYFILE) SRCFILE(MYSRCLIB/QDDSSRC), чтобы система могла воссоздать файл на месте; существующие логики обрабатываются автоматически. В основном эквивалент DDS ALTER TABLE

 Смежные вопросы

  • Нет связанных вопросов^_^