|
 |
 |

Frage: Was bedeutet: "Das Datenbankformat wurde nicht erkannt oder die Datenbank ist beschädigt."? |
Dieser Fehler tritt meist bei Access 97 Datenbanken auf, die innerhalb der ASP-Skripte
mit der Jet 4-Engine angesprochen werden. Dies resultiert auf einem soweit ich weiß,
unbestätigten Bug in der Jet 4 Engine. Diese scheint die Access 97 Datenbank nicht mehr
richtig wegzuschreiben. Wenn dann genügend Änderungen an der DB gemacht wurden,
ist die Kopie im Speicher nicht mehr intakt und es wird ein Fehler erzeugt. Dieser sieht
in etwa folgendermaßen aus:
-----------------------------------------------------------------------------------------
Das Datenbankformat wurde nicht erkannt oder die Datenbank ist beschädigt.
-----------------------------------------------------------------------------------------
Falls dieser Fehler bei Ihnen auftreten sollte, hilft in den meisten Fällen der Umstieg auf
die Access-Treiber oder auf die Jet 3.51 Engine. Allerdings bringt letzeres auch wieder
einige Probleme mit sich. Aus diesem Grund empfehlen wir für den Zugriff auf Access 97
Datenbanken in ASP die Verwendung der Microsoft Access ODBC Treiber.
Nachfolgend sehen Sie ein Beispiel, wie Sie einen solchen Zugriff problemlos auch ohne
eine System-DSN vornehmen können.
[access97.asp]
<%
' --- Verwenden der Access ODBC Treiber für den Datenbankzugriff
Dim strDriver
strDriver = "DRIVER=Microsoft Access Driver (*.mdb);"
' --- Angeben des Speicherpfads der Datenbank
Dim strDatabase
strDatabase = "DBQ=" & Server.MapPath ("./") & "\verzeichnis\datenbank.mdb;"
' --- Angaben des Usernamens und des Datenbankpassworts.
' --- Wird nur benötigt, wenn die DB passwortgeschützt ist
Dim strUsername
strUsername = "UID=admin;"
Dim strPassword
strPassword = "PWD=<passwort>;"
' --- Zusammenstellen des gesamten Verbindungsstrings
Dim strComplete
strComplete = strDriver & strDatabase & strUser & strPassword
' --- Öffnen der Datenbankverbindung
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.open strComplete
' --- Hier sollte dann ihr Quellcode stehen
...
objConn.Close
Set objConn = Nothing
%>
|
|
 |
 |
|
|