У меня есть таблица с двумя столбцами, которые представляют собой уникальный ключ, и я не могу изменить схему.
Я пытаюсь выполнить обновление с помощью psql, в котором я меняю значение одного из ключевых столбцов. Скрипт похож на следующий:
BEGIN;
UPDATE t1 SET P1='23' where P1='33';
UPDATE t1 SET P1='23' where P1='55';
COMMIT;
Использование psql с командой:
psql -U user -f file
у меня ошибка
ERROR: duplicate key violates unique constraint "<key_name>"
Но столбец находится в ключе с другим столбцом, и его изменение не «ломает» какое-либо уникальное ограничение. Тот же запрос внутри pgAdmin3 выполняется без ошибок.
Я не dba, мне кажется, что я упускаю что-то очевидное.
Спасибо