Я пытаюсь сделать то, что описано в this solution, а также here. Это означает, что я хотел бы копировать строки со многими столбцами при изменении только нескольких значений. Так что мой запрос выглядит следующим образом:Копирование строк нарушает непустое ограничение в PostgreSQL
CREATE TEMPORARY TABLE temp_table AS
SELECT * FROM original_table WHERE <conditions>;
UPDATE temp_table
SET <auto_inc_field>=NULL,
<fieldx>=<valuex>,
<fieldy>=<valuey>;
INSERT INTO original_table SELECT * FROM temporary_table;
Однако <auto_inc_field>=NULL
часть не работает для меня, соответственно, моей базы данных PostgreSQL 9.4:
Exception: null value in column "auto_inc_field" violates not-null constraint
<auto_inc_field>
столбца определяется как BIGINT, последовательный порт, и имеет ограничение первичного ключа.
Что мне нужно передать, если NULL
не работает? Есть ли альтернативный метод?
Что такое определение ''? Он должен принимать значение null. –
Обновлен вопрос. У этого есть основное ограничение. Есть ли способ сделать эту работу? – n1000