Я пытаюсь вставить столбец данных из одной таблицы в другую. Таблица, которую я пытаюсь вставить, называется MU.PROVIDERS. Таблица, которую я вставляю, называется Sheet1 $. (Импортировано из листа Excel). У столбцов, которые у них есть общего, называется «NPI», ключ, который является общим для всех поставщиков, поэтому я пытаюсь вставить на основе этого ключа. Не каждое значение NPI в Sheet1 $ помещает соответствующее значение RELAY_ID в таблицу «MU.PROVIDERS». (Есть еще НПИ в «MU.PROVIDERS», чем в Лист1 $) Мой запрос выглядит следующим образом:SQL-сервер, вставляющий значения из одной таблицы в другую
INSERT INTO [MU.PROVIDERS] (RELAY_ID)
SELECT h.RELAY_ID
FROM Sheet1$ as h JOIN
[MU.PROVIDERS] as i ON h.NPI = i.NPI;
Я получаю сообщение об ошибке: Не удается вставить значение NULL в столбец «НПИ», таблица " MU.PROVIDERS '; столбец не допускает нулей. INSERT терпит неудачу.
У меня есть столбец NPI как первичный ключ в таблице «MU.PROVIDERS», но я ничего не вставляю в этот столбец, поэтому я не понимаю проблему.
Вы используете инструкцию 'Insert'. Это добавит новую запись. Если вы укажете только одно поле в 'insert', остальные поля в таблице будут автоматически установлены в NULL для этой новой записи. – JNevill