Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL заявка към множество бази данни

Мисля, че проблемът с дубликатите не е свързан с обединяването на двете бази данни, а по-скоро във вашето съединяване на първо място. Мисля, че може да се нуждаете от INNER или OUTER съединение, за да се справите със свързването. Що се отнася до получаването на данни от две различни бази данни, синтаксисът е доста прост. Просто добавяте името на сървъра точка името на базата данни точка името на собственика точката името на таблицата.

Например:

SELECT firstdb.*, seconddb.*
FROM Server1.Database1.dbo.myTable AS firstdb
INNER JOIN Server2.Database2.dbo.myTable AS seconddb
   ON firstdb.id = seconddb.id

Във вашия пример звучи така, сякаш връзката работи, но имате проблем с присъединяването в полето repair_ord. Въпреки че не знам вашата схема, бих предположил, че тази връзка трябва да бъде INNER JOIN. Ако просто добавите и двете таблици в оператора FROM и не направите вашия оператор WHERE правилно, ще изпаднете в проблеми, каквито описвате.

Бих предложил да опростите тази настройка и да я поставите в тестова среда (на една DB). Опитайте съединяването на четири маси, докато не го направите правилно. След това добавете сложността на извикванията на множество бази данни.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Порт 1433 на защитната стена не се отваря

  2. Най-бързият начин за клониране на ред в SQL

  3. Опасност от използването на 'IF EXISTS... UPDATE .. ELSE .. INSERT' и каква е алтернативата?

  4. SSRS връща различни резултати от съхранената процедура

  5. Редактиране на редове/записи в таблицата в SQL Server Management Studio (SSMS) - урок за SQL Server / TSQL урок, част 18