Создать упорядоченный оператор вставки из присоединенного запроса Master-Detail? - PullRequest
2 голосов
/ 27 мая 2019

У меня есть запрос, который дает результаты из 2 объединенных таблиц: Bands & Members

Для упрощения: это вывод объединенного запроса :

enter image description here

BandId & memberId являются столбцами идентификаторов

Я хочу создать запрос оператора insert, который добавит эти записи, но должен иметьorder + Identity:

insert into bands(band,decade) values('beatles',60)
declare @newBandId int = SCOPE_IDENTITY()

insert into  Members (member, age , relatedBandId)
values('john', 40,@newBandId ),
values('paul', 42,@newBandId ),
values('george', 43,@newBandId ),
values('ringo', 40,@newBandId )


insert into bands(band,decade) values('doors',70)
declare @newBandId int = SCOPE_IDENTITY() -- `decalre` again ? error?

insert into  Members (member, age , relatedBandId)
values('jim', 50,@newBandId ),
values('john', 60,@newBandId ),
values('ray', 40,@newBandId ),
values('robbie', 20,@newBandId )

Band и Members - это таблицы на сервере 1. Мне нужно сгенерировать данные на сервере 2. (которые также имеют таблицы Band и Members, но с другими данными).Поэтому я хочу создать запрос оператора вставки.

Я не могу выполнить перекрестный запрос базы данных из-за ограничений безопасности orgaization или импорта.

Поэтому я должен создать запрос оператора вставки - который будетпривести к длинному запросу оператора вставки.У меня нет проблем с конкатенацией строк по строкам, просто мне нужно запустить вставку для группы (только один раз), а затем получить идентификатор и только потом запустить 3 вставки для членов.

Вопрос:

Как создать оператор вставки из этого объединенного запроса с помощью этапов, описанных выше?

Fiddle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...