#sql #database #insert #db2 #auto-increment
#sql #База данных #вставить #db2 #автоматическое увеличение
Вопрос:
Хорошего дня,
У меня есть таблица, некоторым столбцам которой и BELTID
присвоено значение primary key, и IS_AUTOINCREMENT
присвоено значение YES
.
Я хочу вставить строку данных внутри этих данных без ключа в BELTID, я ожидаю, что BELDID будет автоматически сгенерирован.
Запрос выглядит следующим образом:
INSERT INTO mySchema.TABLE1(TYPE, ORIGINALBATCHID, MANUAL)
VALUES ('TEST', 124, 1);
Я получаю эту ошибку:
Состояние SQLSTATE: 23505. Произошло нарушение ограничения, налагаемого уникальным индексом или уникальным ограничением.
Затем я меняю свой запрос на:
INSERT INTO mySchema.TABLE1(BELTID, TYPE, ORIGINALBATCHID, MANUAL)
VALUES (123, 'TEST', 124, 1);
И я получаю другую ошибку:
SQLSTATE: 428C9 Столбец ROWID не может быть указан в качестве целевого столбца ВСТАВКИ или ОБНОВЛЕНИЯ.
Пожалуйста, сообщите, какую ошибку я допускаю.
Комментарии:
1. Пожалуйста, покажите полное определение таблицы. Какая версия и платформа DB2?
2. Какие триггеры в этой таблице?