Пожалуйста, обратите особое внимание на то, что сказал Пит о личности @@. Причина плохого использования @@ identity заключается в том, что если в таблицу добавляется триггер, который вставляется в другую таблицу с идентификатором, то это идентификатор, который возвращается, а не тот, который вы только что вставили. Это может привести к серьезным проблемам с целостностью данных, которые могут не возникнуть в течение нескольких месяцев.
Даже если вы сохранили курсор (что я не рекомендую, курсоры - очень плохой способ вставки, поскольку они очень медленные по сравнению с решением на основе множеств, которое дал Пит), ваш код не сможет выполнить вставку первая таблица, если столбец D - это столбец идентификаторов (как я предполагаю, так как позже вы попытаетесь присвоить D значению идентификатора). Это потому, что вы пытаетесь поместить значение в столбец, который не может принять значение, поскольку оно генерируется автоматически. Если D - это тождество, то вообще не используйте его при вставке, просто определите столбцы, в которые нужно вставить. Это было бы верно и для решения Пита, если бы D на самом деле был вашим столбцом идентификации.