stiehl
Goto Top

PHP4-Skript verbindet sich nicht auf mdb-Datenbank

Hallo zusammen,

ich habe ein kleines php-Skript geschrieben, welches sich auf eine Access-Datenbank per ODBC verbindet und einige Sachen ausliest.

Verwendete PHP-Version ist 4,
der Webserver ist ein IIS 5 welcher nur für das PHP-Skript läuft
und die *.mdb File wurde mit Access 2000 erstellt.

Soweit so gut. Das php4 ist ganz normal per isapi.dll im IIS angemeldet und es ist auch eine ODBC-Datenquelle in der Systemsteuerung angelegt, welche auf die *.mdb verweist.

Eigentlich ist alles in Ordnung, weil das Skript in der vorhandenen Konfiguration (Hard- und Software) lange Zeit einwandfrei lief. Nun läuft es aber auf einmal nicht mehr! Es erscheint folgende Fehlermeldung im Browser beim Versuch das Skript aufzurufen:

 Warning: odbc_connect(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Das Microsoft Jet-Datenbankmodul kann die Datei '(unbekannt)' nicht öffnen. Sie ist bereits von einem anderen Benutzer exklusiv geöffnet, oder Sie benötigen eine Berechtigung, um die Daten lesen zu können. SQL state S1000 in SQLConnect in x:\xxxxx\xxx\config.php on line 7  

Die Ursachen, die in der Fehlermeldung beschrieben werden kann ich ausschließen. Denn auch direkt nach einem Reboot des Servers (evtl. locking weg) war die Datenbank von einem anderen "Benutzer exklusiv geöffnet" und die Berechtigungen für die DB sind auch in Ordnung. Was mich noch stutzig machte ist die Angabe der Datei '(unbekannt)' in der Meldung. Die Datenquelle ist aber ordnungsgemäß in der Systemsteuerung eingetragen (funktionierte ja vorher). Deshalb vermute ich, dass der ODBC-Teil in Windows nen Schlag weg hat. Kann man diesen vielleicht einzeln neuinstallieren? Wenn ja, wie? Oder weiss jemand woran es noch liegen könnte?

Für eure Hilfe bedanke ich mich schonmal im Voraus ;)

Tim

Content-Key: 7193

Url: https://administrator.de/contentid/7193

Printed on: April 19, 2024 at 18:04 o'clock

Member: stiehl
stiehl Feb 24, 2005 at 18:46:51 (UTC)
Goto Top
hat denn keiner eine Idee oder wenigstens einen Ansatz? oder hab ich einfach nur nen Denkfehler drin?