Вставка в другую БД на том же сервере
От: STDray http://stdray.livejournal.com
Дата: 22.08.18 17:35
Оценка:
Привет!


Можно ли как-то средствами linq2db (sqlserver) сделать вставку из одной базы в другую в рамках одного сервера?

Пока думаю, притянуть необходимые мне таблицы в виде вьюх из базы-источника в целевую БД и там уже из них писать select'ы.

Тут еще важно, чтобы запрос получился server side, без прокачивания данных через клиента. Если очевидный способ есть, то я пока его не вижу.
Re: Вставка в другую БД на том же сервере
От: STDray http://stdray.livejournal.com
Дата: 22.08.18 17:41
Оценка:
STD>Можно ли как-то средствами linq2db (sqlserver) сделать вставку из одной базы в другую в рамках одного сервера?

Вот только написал и сразу решение нашлось.
Достаточно сделать штатными средствами 2 разных контекста, указав в t4-шаблоне следующий флаг
GenerateDatabaseName = true;

Не знаю, законно ли такое вообще , но вроде работает.
Re[2]: Вставка в другую БД на том же сервере
От: IT Россия linq2db.com
Дата: 23.08.18 15:31
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Достаточно сделать штатными средствами 2 разных контекста, указав в t4-шаблоне следующий флаг


Имя базы данных всегда можно указать непосредственно в запросе.
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: Вставка в другую БД на том же сервере
От: STDray http://stdray.livejournal.com
Дата: 23.08.18 15:37
Оценка:
Здравствуйте, IT, Вы писали:

IT>Имя базы данных всегда можно указать непосредственно в запросе.

Что-то я не совсем понимаю, где в IQuerable-выражении можно указать имя базы данных.
Пока я просто использую два контекста, которые смотрят в разные базы с тем флагом, про который я писал выше.
Re[4]: Вставка в другую БД на том же сервере
От: IT Россия linq2db.com
Дата: 23.08.18 18:56
Оценка:
Здравствуйте, STDray, Вы писали:

STD>Что-то я не совсем понимаю, где в IQuerable-выражении можно указать имя базы данных.


db.GetTable<Table>().DabaseName("TableName")
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.