Announcement

Collapse
No announcement yet.

DB auf CD

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

  • DB auf CD

    Hallo,

    ich habe ein Problem mit einer Datenbank, welche ich auf eine CD gebrannt habe. Um auf diese Access-Datenbank zuzugreifen verwende ich Jet4 als Provider. Ich habe ein kleines Delphi-Testprogramm geschrieben mit dem man durch diese Datenbank browsen kann. Wenn sich die Datenbank nicht auf CD befindet funktioniert alles wunderbar. Aber auf CD bekomme ich dann eine Meldung in der es heißt, daß die Datenbank nicht geöffnet werden kann, da sie bereits von einem anderen benutzer exclusiv geöffnet ist, oder ich eine Berechtigung benötige um die Daten lesen zu können.
    Hat sich an der Datenbank beim Brennen etwas geändert?
    Was muß ich tun damit ich diese Datenbank öffnen kann.

    Gruß
    Carlos

  • #2
    Hallo,

    ich möchte noch hinzufügen, daß es wahrscheinlich an dem Attribut "Schreibgeschützt", welches alle Datein auf CD haben liegt.
    Wenn ich nähmlich die DB auf Platte jopiere, kann ich erst auf die Datenbank zugreifen, wenn das Attribut weg ist.
    Kann man da überhaupt etwas unternehmen, um auf die CD-DB zuzugreifen ?

    Gruß
    Carlo

    Comment


    • #3
      Du hast das Problem schon fast erkannt. Da Du Jet als Engine verwendest, legt diese beim Öffnen der MDB eine *.LDB an, in der die augenblicklich an der DB angemeldeten Nutzer stehen und weitere Info's , wie z.B. welche Datensätze durch diese gesperrt sind usw., an. Wenn diese Datei durch Jet nicht angelegt werden kann, geht es davon aus, das ein anderer Nutzer die Datenbank bereits exclusiv geöffnet hat. Ein schneller, aber uneleganter Weg ist, die Datenbank auf Platte zu kopieren und dabei den Schreibschutz zu entfernen, dürfte ja mit Delphi kein Problem sein, ansonsten würde ich mal schauen, ob die BDE einen Zugriff ohne Schreibrechte erlaubt. Ich habe schnell mal ein test im C-Builder losgelassen, scheitere aber schon an 'ner fehlenden DLL. Der BDE-Manager allerdings erlaubt eine Angabe eines ReadOnly-Flags für den nativen Access(97)-Treiber. Also würde ich mal in diese Richtung schauen. Ansonsten kann ich nur ein paar Links zum Weiterforschen empfehlen, wie z.B. www.mvps.org oder www.donkarl.com (hier die Links)... haaaa, hab noch was gefunden, wusste doch, dass MS sich dazumal ausgelassen hat, also, Abhilfe unter:

      http://support.microsoft.com/directory/article.asp?ID=KB;EN-US;Q191737

      Hoffe, geholfen zu haben,

      Gruss, Sve

      Comment


      • #4
        Danke,

        wenn ich "read only" auf die CD-Datenbank zugreife funktioniert es.

        Gruß
        Carlo

        Comment


        • #5
          Dieses Problem habe ich auch, kann aber im ADO-Objekt nicht den Zugriff so einstellen (Read und Share Exclusive) sondern es entsteht im Connection-String 'Read|ShareDenyRead|ShareDenyWrite'. Nur so führt das Öffnen der Datenbank (Connected = true im Objektexplorer) zum Fehler. Dieser Fehler erscheint aber nur in der Entwicklungsumgebung, ADOConnection öffnet aber die Verbindung. Aktiviere ich aber im Datenmodul dieses Objekt, erscheint die Meldung.

          Gruß Ud

          Comment

          Working...
          X