DB auf fremdem Server abfragen

Hallo,

wie kann man o. kann man überhaupt, eine DB abfragen die auf einem anderen Server gehostet wird?
Wie stelle ich (über das Internet) eine Verbindung zu einer DB auf einem anderen Rechner her?
Und falls das geht, wie empfange ich das Ergebnis, als normales Recordset?
Oder muß man das über ein zusätzliches Programm lösen.

MfG
Andy

Hi

wie kann man o. kann man überhaupt, eine DB abfragen die auf
einem anderen Server gehostet wird?

Wie meinst Du das? Hast Du auf dem anderen Server auch einen IIS der Daten liefern könnte oder willst Du Direkt auf die DB?

Direkt auf die DB wirst Du wohl eher nicht können. Mit hilfe eines andren Webservers könntest Du über SOAP darauf zugreiffen.

Wie stelle ich (über das Internet) eine Verbindung zu einer DB
auf einem anderen Rechner her?

Du stellst nicht direkt eine Verbindung zur DB, sondern kommuniziertst über die Funktionen die Dir der IIS (auf dem anderen HOST) zu verfügung stellt.

Und falls das geht, wie empfange ich das Ergebnis, als
normales Recordset?

Als XML

Oder muß man das über ein zusätzliches Programm lösen.

Eben SOAP :wink:

SOAP Toolkit für Visual Studio 6.0
http://msdn.microsoft.com/xml/c-frame.htm?/xml/gener…

SOAP allgemein
http://msdn.microsoft.com/soap/

Gruss, Giuseppe

Danke für deinen Hinweis Giuseppe.

Aber warum kann ich nicht direkt mit dem Connction-Objekt eine Verbindung zu einer DB auf einem anderen Server aufbauen?
Ok, ist klar das der DB-Server die entsprechenden Rechte freigeben muß, aber das soll erstmal nicht das Problem sein.

Und zweitens ist XML zwar unheimlich trendy :wink: aber ich glaube nicht das ich soviel Nutzen daraus ziehen kann, wenn ich die Daten im XML-Format vorliegen habe. Kostet nur Performance.

Nochmal Danke
Andy

Hallo

Aber warum kann ich nicht direkt mit dem Connction-Objekt eine
Verbindung zu einer DB auf einem anderen Server aufbauen?

Hmm. Da weiss ich nicht ob das geht, vielleicht schon. Aber aus Security Gründen wird das nicht angewandt.
Ich sehe das Problem aber beim ADO Connectionstring, dort musst Du ja den Server angeben…

Und zweitens ist XML zwar unheimlich trendy :wink: aber ich
glaube nicht das ich soviel Nutzen daraus ziehen kann, wenn
ich die Daten im XML-Format vorliegen habe. Kostet nur
Performance.

Ja das ist relativ. Der XML 3.0 Prozessor ist in der zwischenzeit relativ schnell.
Microsoft setzt übrigens voll auf XML. Der Nachvolger von SQLServer 2000 wird übrigens die Daten in Native XML abspeichern.
ADO+ wird auf XML basieren, Exchange 2000 Schema Erweiterungen basieren schon auf XML. BizTalk Server basiert auch auf XML… und und und…
Ich bin überzeugt, dass man mit XML auf dem richten Schiff sitzt.

Schau Dir doch trotzdem SOAP an, ich finde es echt cool.

Gruss, Giuseppe

Hey

meiner meinung kommt es darauf an, was für eine db du abfragen willst. ms sql server sollte meiner meiner meinung nach gehen. (access nicht !!) vorausgesetzt natürlich, der server steht im internet und du weisst wie die odbc quelle heisst und hast rechte drauf.

aber ich kann mich irren. arbeite selber mit oracle und da funktz wunderbar…

gruss
tom

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

meiner meinung kommt es darauf an, was für eine db du abfragen
willst. ms sql server sollte meiner meiner meinung nach gehen.
(access nicht !!) vorausgesetzt natürlich, der server steht im
internet und du weisst wie die odbc quelle heisst und hast
rechte drauf.

Wenn es mit SQL Server geht, dann geht es auch mit Access…

aber ich kann mich irren. arbeite selber mit oracle und da
funktz wunderbar…

Wie greiffst Du drauf? mit ADO?

gruss, Giuseppe

meiner meinung kommt es darauf an, was für eine db du abfragen
willst. ms sql server sollte meiner meiner meinung nach gehen.
(access nicht !!) vorausgesetzt natürlich, der server steht im
internet und du weisst wie die odbc quelle heisst und hast
rechte drauf.

Wenn es mit SQL Server geht, dann geht es auch mit Access…

sorry, aber das stimmt glaube ich so nicht. du kannst meiner meinung nicht auf eine access db zugreifen, die nicht auf dem selben server liegt wie deine asp applikation. das aus dem grund, weil du per access-odbc-treiber nicht auf eine andere maschine connecten kannst. sql-server-odbc funktioniert. da kannst du die ip der remotemaschine und die db angeben… (und user und passwort)

aber ich kann mich irren. arbeite selber mit oracle und da
funktz wunderbar…

Wie greiffst Du drauf? mit ADO?

Oracle Services für NT… müssen auf dem server installiert sein.

gruss
tom

sorry, aber das stimmt glaube ich so nicht. du kannst meiner
meinung nicht auf eine access db zugreifen, die nicht auf dem
selben server liegt wie deine asp applikation. das aus dem
grund, weil du per access-odbc-treiber nicht auf eine andere
maschine connecten kannst. sql-server-odbc funktioniert. da
kannst du die ip der remotemaschine und die db angeben…
(und user und passwort)

vielleicht haben wir ein verständigungsproblem. mit access solte das aber gehen: ich kann die datenbank irgendwo im meinem lan haben und die odbc quelle auf dem iis machen (laufwerk mappen). (mit ado kannst du ausserdem den oledb-provider für access nehmen und dann hat sich das problem auch erledigt)

gruss, Giuseppe