Announcement

Collapse
No announcement yet.

Abfrage über 2 SQL Server?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Abfrage über 2 SQL Server?

    Hallo!

    Situation: Es befindet sich eine Datenbank auf einem SQL Server im Netzwerk und eine andere lokal in der MSDE, also habe ich 2 unterschiedliche Connections.

    Ist es irgendwie möglich (ADO, Delpi6, MSSQL2000) eine Abfrage über diese 2 Datenbanken zu machen obwohl sie auf unterschiedlichen Servern liegen?

    Wenn ja bitte ich euch mir ein kurzes Besipiel oder eine Erklärung zu posten.

    DANKE
    Christian Ranftl

  • #2
    Hallo,

    der MS SQL Server (bzw. die MSDE) unterstützten den direkten Zugriff auf mehrere Datenbanken direkt in der SQL-Anweisung. Man benötigt somit nur eine einzige ADO-Verbindung, um von Außen diese datenbankübergreifende SQL-Anweisung anzustoßen. Die beiden Datenbanken dürfen sogar auf völlig unterschiedlichen Rechnern laufen.

    Beispiel für 2 Datenbanken auf dem gleichen Rechner:
    <pre>
    SELECT
    a.*, b.*
    FROM
    DatenbankA.dbo.Tabelle1 a JOIN DatenbankB.dbo.Tabelle1 b ON a.Primärschlüsselspalte = b.Primärschlüsselspalte
    </pre>
    Beispiel für 2 Datenbanken auf unterschiedlichen Rechnern:
    <pre>
    SELECT
    a.Feld1, e.Feld2
    FROM
    Tabelle1 AS a JOIN OPENROWSET('SQLOLEDB','192.168.10.1';'sa';'sa',tem pdb.dbo.Tabelle2) AS e ON a.FeldKey = e.Feldkey
    </pre&gt

    Comment


    • #3
      Hallo Herr Kosch!

      Danke für die rasche Antwort!

      Gibt es auch eine Möglichkeit das ganze mit 2 Connections zu realisieren?

      Denn mein Problem ist folgendermaßen, unsere Kunden verwenden lokal die MSDE und im netz haben Sie einen SQL Server.

      Jetzt ist es notwendig Abfragen über Tabellen die auf den beiden Servern liegen zu ermöglichen, jedoch ist es schwierig das ganze so zu gestalten das man die IP auslesen muss, dann ist es oft unterschiedlich von den Sicherheitseinstellungen manche haben Windows Security und manche nicht,...

      Die für mich attraktivste Lösung wäre eine Abfrage wo man die beiden Connections benutzt die wir ohnehin im Programm haben.
      (Eine Connection zum SQLServer -> conSQL und eine zur MSDE -> conLOKAL )

      Danke!
      Christia

      Comment

      Working...
      X