Любые предложения по подключению таблиц с разных серверов в хранимой процедуре?Объединение таблиц с разных серверов
ответ
Без получения более подробной информации, это трудно дать прямые примеры, но вот основная идея:
Во-первых, за пределами хранимой процедуры, хост-сервер (сервер хранимая процедура будет на) должен знать о втором сервере, включая (возможно) информацию для входа.
На главном сервере запустите хранимую процедуру sp_addlinkedserver. Это только должно быть сделано однажды:
exec sp_addlinkedserver @server=’(your second server)‘;
Если вам необходимо предоставить информацию для входа на этот второй сервер (например, процесс не может войти с теми же учетными данными, которые используются в исходной базе данных соединение), сделайте это с sp_addlinkedsrvlogin хранимая процедура:
exec sp_addlinkedsrvlogin @rmtsrvname=’(your second server)‘,@useself=false, @rmtuser=’yourusername‘, @rmtpassword=’yourpassword‘;
Затем, в хранимой процедуре, вы можете выбрать таблицы, на втором сервере:
SELECT table1.*
FROM table1
INNER JOIN [secondserver].[database].[schema].[table] AS table2 ON
table1.joinfield = table2.joinfield
Прежде чем присоединяться к таблицам, вы должны сначала связать два сервера. Как только они связаны, вы можете просто использовать приведенный ниже запрос и заменить сервер, базу данных & имена таблиц.
Не забудьте выполнить ниже SQL в DB2:
EXEC sp_addlinkedserver DB1
GO
-- below statement connects sa account of DB2 to DB1
EXEC sp_addlinkedsrvlogin @rmtsrvname = 'DB1', @useself = 'false', @locallogin = 'sa', @rmtuser = 'sa', @rmtpassword = 'DB1 sa pwd'
GO
SELECT a.columns
FROM DB1.database_name.dbo.table_name a
INNER JOIN DB2.database_name.dbo.table_name b
ON a.columnId = b.columnId
GO
Связывание серверов - http://msdn.microsoft.com/en-us/library/ms188279.aspx
1. Проверьте, чтобы увидеть, если у вас есть какие-либо связанные с использованием серверов exec sp_helpserver
2. Если ваш сервер не возвращается, то это не Linked
, что означает, что вам нужно его добавить. В противном случае перейти к шагу 3.
Для Sql Server 2008 R2, перейдите Server Object > Linked Servers > Add new Linked Server
Или
exec sp_addlinkedserver @server='ServerName';
3. Подключение к вторичному серверу как так ...
exec sp_addlinkedsrvlogin
@rmtsrvname='ServerName'
, @useself=false
, @rmtuser='user'
, @rmtpassword='Password';
4. Теперь вы можете присоединиться к таблицам для двух разных серверов.
SELECT
SRV1.*
FROM
DB1.database_name.dbo.table_name SRV1
INNER JOIN DB2.database_name.dbo.table_name SRV2
ON SRV1.columnId = SRV2.columnId
GO
- 1. MySQL. Объединение таблиц с разных серверов
- 2. Объединение двух таблиц с разных серверов с помощью LINQ
- 3. Объединение таблиц на несколько серверов
- 4. Perl: Синхронизация двух таблиц с разных серверов
- 5. Объединить значения двух таблиц с разных SQL-серверов
- 6. mysql объединение и объединение разных таблиц
- 7. Возможно объединение двух таблиц (одного Mysql, другого Oracle) с двух разных серверов в PHP?
- 8. Сравнение двух таблиц с разных серверов с использованием PHP
- 9. MDX: объединение данных из разных таблиц
- 10. Объединение двух таблиц на разных серверах
- 11. Объединение таблиц из 2 разных строк подключения
- 12. Объединение таблиц на основе разных имен столбцов
- 13. Объединение столбцов из разных таблиц без дублирования
- 14. Объединение таблиц из разных баз данных
- 15. Объединение нескольких таблиц из разных баз данных
- 16. Как создавать представления на основе таблиц с разных серверов?
- 17. Объединение двух разных таблиц в SQL
- 18. Объединение двух таблиц из разных баз данных
- 19. Вход Hadoop с разных серверов
- 20. Обслуживание пользователя с разных серверов
- 21. Объединение таблиц из разных номеров строк с таблицей мастер-MAP
- 22. Объединение нескольких таблиц разных типов с общими столбцами
- 23. SQL Объединение серверов необходима помощь
- 24. Объединение таблиц
- 25. Объединение трех таблиц
- 26. Объединение таблиц в один
- 27. Объединение двух серверов в поток данных SSIS
- 28. Работа с несколькими репозиториями с разных серверов
- 29. Объединение таблиц с использованием MySQL
- 30. объединение двух таблиц с запросом