Проблема с простым столбцом перетаскивания DB2

У меня есть любопытная проблема с простым запросом перетаскивания столбца в DB2. Я провел некоторое исследование, и синтаксис кажется правильным, но все же я ошибся. Вот запрос:

alter table ed2.batch_job_instance drop column prova;

Таблица существует, столбец также (который представляет собой простой обнуляемый varchar), но все же у меня есть эта ошибка:

НЕЗАКОННОЕ ИСПОЛЬЗОВАНИЕ КЛЮЧЕВОГО СЛОВА. ЗАПРОС ТОКЕНА МАТЕРИАЛИЗОВАН ПЕРВИЧНОЕ ВНЕШНЕЕ ОГРАНИЧЕНИЕ ОГРАНИЧЕНИЕ БЫЛО ОЖИДАЕТСЯ УНИКАЛЬНОСТЬ Код SQL: -199, состояние SQL: 42601

Что я делаю неправильно? Заранее спасибо.


person Karura91    schedule 31.03.2014    source источник


Ответы (1)


Пожалуйста, проверьте, не включен ли столбец PROVE в какое-либо ограничение. УНИКАЛЬНЫЙ может быть? В этом случае вам придется сначала удалить (удалить) ограничение.

ОБНОВЛЕНИЕ: согласно документации для V10: http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.sqlref%2Fsrc%2Ftpc%2Fdb2z_sql_altertable.htm не существует такой вещи, как DROP COLUMN.

Также другой источник: http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.admin%2Fsrc%2Ftpc%2Fdb2z_altertables.htm даже не упоминайте эту возможность (но указано добавить столбец).

EDIT: вам нужно будет использовать что-то вроде этого:

EXPORT TO data.ixf OF IXF SELECT COL1, COL2 FROM TABLE1;
DROP TABLE TABLE1;
CREATE TABLE TABLE1 (COL1 ..., COL2 ...);
IMPORT FROM data.ixf OF IXF INSERT INTO TABLE1;

ссылка: http://bytes.com/topic/db2/answers/810167-can-i-drop-cloumn-table-db2-z-os

person FazoM    schedule 31.03.2014
comment
Нет, к сожалению, столбец не участвует ни в каких ограничениях. Это простой столбец. - person Karura91; 31.03.2014
comment
Какую версию DB2 вы используете? - person FazoM; 31.03.2014
comment
Версия DB2 — 10, но, вероятно, она используется в каком-то режиме совместимости. Эта БД принадлежит заказчику, я мало над ней контролирую. - person Karura91; 31.03.2014
comment
Так же, как я боялся, но я хотел быть уверенным. Какая нелепая СУБД, чувак. Спасибо большое за вашу помощь. - person Karura91; 31.03.2014
comment
Эта проблема характерна только для DB2 для z/OS и разрешена для IBM i или LUW. - person WarrenT; 31.03.2014