Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

ODBC MS REMOTE Verbindung mit Access DB

Frage Entwicklung Datenbanken

Mitglied: iceget

iceget (Level 2) - Jetzt verbinden

10.09.2007, aktualisiert 11.09.2007, 10404 Aufrufe, 3 Kommentare

Hallo,

und zwar habe ich folgendes Problem:
Ein Kollege von mir programmierte eine Online Reservierung mittels ASPx (C#).

Die Webapplikation greift auf die lokale Access Datenbank zu, um Daten zu öffnen / schließen / schreiben.
Also die Applikation + Datenbank liegen direkt auf dieser Maschine lokal.

Jetzt möchte ich aber die Applikation auf einen richtigen Server legen,
und leider ist es mir nicht möglich die Datenbank auf den Server auch zu verlegen,
da dies die Datenbank von einer am lokal laufenden Software ist, wo man sich DVD's direkt vorm Automaten
ausleihen kann, und diese Software unterstützt rein nur localhost.

Deswegen muss ich von der Ferne auf diese Datenbank mittels dieser Applikation zugreifen können.
Aber leider funktioniert das nicht, lokal muss ich ein System DSN (ODBC) angeben, das nach C:/database.mdb zeigt.

Hier die web.config (mein missglückter Versuch):
...
<add name="ConnectionString" connectionString="Provider=MS Remote;RemoteServer=http://www.url-wo-die-datenbank-liegt.com;Remote Provider=Microsoft.Jet.OLEDB.4.0;DSN=MainDatabase;uid=Admin;pwd=dbpass" />
...

Hier die web.config die funktioniert (Lokal (Applikation+Datenbank)):
...
<add name="ConnectionString" connectionString="Dsn=MainDatabase;uid=Admin;pwd=dbpass" providerName="System.Data.Odbc" />
...

Was mach ich falsch? Der Browser gibt mir immer raus:
ERROR [IM002] [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben

Lokal muss ich ja dann keinen ODBC System DSN angeben, oder? Wenn ja, welchen Typ?
Oder muss ich zuerst ein Netzwerklaufwerk verbinden? Oder doch mit WebDAV?

Aussehen zur Zeit tut es so:
Der Kunde geht auf die Internetreservierung http://www.meine-reservierung.com/.
Die Applikation baut die Verbindung zum lokalen ODBC System DSN C:/database.mdb her,
und der Kunde kann mit der Applikation arbeiten.

Aussehen sollte es dann so:
Der Kunde geht auf die Internetreservierung http://www.meine-reservierung.com/.
Die Applikation baut die Verbindung zum entfernten ODBC System DSN dort auf d:/database.mdb (www.my-db-server.com)
und gibt die Daten zurück.

Grund:
Das System ist jetzt ein Standalone System, läuft nur auf den eigenen Automaten.
Diese Applikationen sollten halt vermietet werden, und deswegen sollte der Quellcode nicht am Automaten direkt sein,
sondern rein nur die Datenbank damit die Applikation vom Server auf die Datenbank am Automaten zugreifen kann

Was muss ich am Automaten direkt beim IIS installieren/einstellen und was am Server?

Hoffe Ihr könnt mir helfen, ich bin am verzweifeln. Mein Kollege der ist nicht hier, und ich selbst schaff das nicht.
Kenne mich nur mit PHP einigermassen gut aus, aber zu 0% mit ASP und SQL Strings...

Vielen Dank!

glg mAx
Mitglied: AndreasHoster
11.09.2007 um 17:46 Uhr
In ASP kenne ich mich nicht aus, das mal vorneweg.

Der Jet ODBC Treiber braucht ein Laufwerksmapping mit Laufwerksbuchstabe (zumindestens habe ich es nie anders hinbekommen). Also direkt irgendwas mit http:// geht nicht. Wenn WebDAV einen LW-Buchstaben stellt, sollte es theoretisch gehen.

Zugriff auf entfernte Datenbanken geht dann wie lokal auch:
<add name="ConnectionString" connectionString="Dsn=RemoteDatabase;uid=Admin;pwd=dbpass" providerName="System.Data.Odbc" />
Nur das in der Definition der RemoteDatabase DSN im ODBC Administrator die entfernte Datenbank auf dem gemappten LW angegeben ist statt der c:\database.mdb.

Und letztlich:
Es gibt keine ineffizientere Variante auf Daten zuzugreifen als auf eine nicht lokale MDB Datei.
Die Daten werden nämlich auf Deinem Rechner verarbeitet, ein Select welches z.B. nur eine Zeile zurückgibt sorgt trotzdem erstmal dafür, daß die gesamte Tabelle gelesen wird. Das über Internet ist kein Spaß. Schon im lokalen Netzwerk kann man mit Access auf Netzlaufwerken das Netzwerk schier zum Zusammenbruch bringen.

Idee:
Auf den lokalen Systemen eine MSDE oder SQL 2005 Express installieren und es über den fahren. Der verarbeitet die SQL Statements nämlich bei sich und überträgt nur noch die gewünschten Daten.
Bitte warten ..
Mitglied: iceget
11.09.2007 um 20:30 Uhr
Hallo und Danke!

Okay, aber die Automatensoftware arbeitet nur mit Access!
Also vielleicht kenne ich mich nicht so aus, aber geht das, das man das ganze umwandelt?
Also die Anfragen die in Access kommen, dann über SQL 2005 Express?

Oder wie kann ich das am besten anstellen?

Kannst Du mir einfach ein kleines Beispiel schildern, wie ich das mache,
damit ich auch begreife wie das in etwa nur funktioniert?

Vielen Dank schon jetzt!!

lg mAx
Bitte warten ..
Mitglied: iceget
25.02.2013 um 09:26 Uhr
Hallo,

danke für deine damalige Antwort!

Ich lese gerade meine alten Threads durch.
Habe aber mittlerweile eine Sync Software in C# gecodet die in Echtzeit (sobald er eine Änderung lokal an der Access merkt) die MySQL Datenbank abgleicht.

So habe ich das nun gelöst

Danke

lg iceget

Zitat von AndreasHoster:
In ASP kenne ich mich nicht aus, das mal vorneweg.

Der Jet ODBC Treiber braucht ein Laufwerksmapping mit Laufwerksbuchstabe (zumindestens habe ich es nie anders hinbekommen). Also
direkt irgendwas mit http:// geht nicht. Wenn WebDAV einen LW-Buchstaben stellt, sollte es theoretisch gehen.

Zugriff auf entfernte Datenbanken geht dann wie lokal auch:
<add name="ConnectionString" connectionString="Dsn=RemoteDatabase;uid=Admin;pwd=dbpass"
providerName="System.Data.Odbc" />
Nur das in der Definition der RemoteDatabase DSN im ODBC Administrator die entfernte Datenbank auf dem gemappten LW angegeben ist
statt der c:\database.mdb.

Und letztlich:
Es gibt keine ineffizientere Variante auf Daten zuzugreifen als auf eine nicht lokale MDB Datei.
Die Daten werden nämlich auf Deinem Rechner verarbeitet, ein Select welches z.B. nur eine Zeile zurückgibt sorgt
trotzdem erstmal dafür, daß die gesamte Tabelle gelesen wird. Das über Internet ist kein Spaß. Schon im
lokalen Netzwerk kann man mit Access auf Netzlaufwerken das Netzwerk schier zum Zusammenbruch bringen.

Idee:
Auf den lokalen Systemen eine MSDE oder SQL 2005 Express installieren und es über den fahren. Der verarbeitet die SQL
Statements nämlich bei sich und überträgt nur noch die gewünschten Daten.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Mobile
Remote Verbindung zu NLS-PT980A ( PDA Windows Embedded CE Ver.6.0 ) (1)

Frage von Haraldger123 zum Thema Windows Mobile ...

Microsoft Office
ODBC Verbindung Problem mit Excel (5)

Frage von 3jojojo zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...