Я пытаюсь вставить данные в таблицу из другой таблицы, а таблицы имеют только один общий столбец. Проблема в том, что в TABLE1 есть столбцы, которые не принимают нулевые значения, поэтому я не могу оставить их пустыми и не могу получить их из TABLE2.
У меня TABLE1: id, col_1 (не ноль), col_2 (не ноль), col_3 (не ноль)
и ТАБЛИЦА2: id, col_a, col_b, col_c
так как я мог вставить идентификатор из таблицы 2 в таблицу 1 и заполнить столбец_1-3 жестко закодированными строками, такими как «данные1», «данные2», «данные3»?
INSERT INTO TABLE1 (id) SELECT id FROM TABLE2 WHERE col_a = "something";
приведет к:
ОШИБКА: нулевое значение в столбце "col_1" нарушает ограничение на ненулевое значение.
источник