Gemiddeld: vereist basisvaardigheden op het gebied van macro's, codering en interoperabiliteit.
Dit artikel is alleen van toepassing op Microsoft Access-databases (.MDB).
Klik op de volgende koppeling voor een Microsoft Access 2000-versie van dit artikel:
208778.
Klik op de volgende koppeling voor een Microsoft Access 97-versie van dit artikel: 136128.
Meer informatie
Automatisch LDB-bestanden maken en verwijderen
Voor elke database die wordt geopend voor gedeeld gebruik, wordt een LDB-bestand gemaakt om computer- en beveiligingsnamen op te slaan en uitgebreide bytebereikvergrendelingen te plaatsen. Het LDB-bestand heeft altijd dezelfde naam als de geopende database (.MDB) en het bevindt zich in dezelfde map als de geopende database. Als u bijvoorbeeld de voorbeelddatabase Noordenwind.mdb in de map C:\Program Files\Microsoft Office\Office 10\Samples opent voor gezamenlijk gebruik, wordt in dezelfde map automatisch een bestand met de naam Noordenwind.ldb gemaakt.
Elke keer dat de laatste gebruiker een gedeelde database sluit, wordt het LDB-bestand verwijderd. De enige uitzonderingen hierop zijn wanneer een gebruiker geen verwijderrechten heeft of wanneer de database is gemarkeerd als beschadigd. Dan wordt het LDB-bestand niet verwijderd omdat het informatie bevat over wie de database gebruikte op het moment dat de database werd gemarkeerd als beschadigd.
Vereiste maprechten
Als u een database wilt delen, moet het MDB-bestand zich bevinden in een map waarvoor gebruikers lees-, schrijf-, maak- en verwijderrechten hebben. Zelfs als u wilt dat gebruikers verschillende bestandsrechten hebben (voor sommige alleen-lezen en voor andere lezen-schrijven), moeten alle gebruikers die een database delen, lees-, schrijf- en maakrechten hebben voor de map. U kunt echter alleen-lezenmachtigingen toewijzen aan het MDB-bestand voor afzonderlijke gebruikers, terwijl u toch volledige machtigingen toewijst voor de map.
Opmerking Als een gebruiker een database opent met exclusieve toegang (door te klikken op de pijl rechts van de knop
Openen en te klikken op
Exclusief openen), wordt recordvergrendeling niet gebruikt en wordt er dus niet geprobeerd een LDB-bestand te openen of te maken. Als de database altijd wordt geopend voor exclusief gebruik, moet een gebruiker alleen-lezen- en schrijfrechten hebben voor de map.
Inhoud van het LDB-bestand
Voor elke persoon die een gedeelde database opent, wordt een vermelding geschreven in het LDB-bestand van de database. De grootte van elke LDB-vermelding is 64 bytes. De eerste 32 bytes bevatten de computernaam (bijvoorbeeld JanSmit). De tweede 32 bytes bevatten de beveiligingsnaam (bijvoorbeeld Admin). Het maximum aantal gelijktijdige gebruikers dat door de Jet Database Engine wordt ondersteund, is 255. Daarom is het LDB-bestand nooit groter dan 16 kB.
Opmerking Hoewel een bestandsserveroplossing tot 255 gelijktijdige gebruikers kan ondersteunen, is het beter als een Access-bestandsserveroplossing niet meer dan 25 tot 50 gebruikers ondersteunt als de gebruikers van de oplossing regelmatig gegevens toevoegen en bijwerken. Ga voor meer informatie naar de volgende Microsoft-website:
Wanneer een gebruiker een gedeelde database sluit, wordt de vermelding van de gebruiker niet verwijderd uit het LDB-bestand. De vermelding van de gebruiker kan echter wel worden overschreven wanneer een andere gebruiker de database opent. Dit betekent dat u niet alleen het LDB-bestand kunt gebruiken om te bepalen wie de database momenteel gebruikt.
Gebruik van het LDB-bestand
De informatie uit het LDB-bestand wordt gebruikt om te voorkomen dat gebruikers gegevens schrijven naar pagina's of records die andere gebruikers hebben vergrendeld, en om te bepalen wie andere pagina's of records heeft vergrendeld. Als er een vergrendelingsconflict wordt gedetecteerd met een andere gebruiker, wordt het LDB-bestand gelezen om de computer- en beveiligingsnaam op te halen van de gebruiker die het bestand of de record heeft vergrendeld.
Bij de meeste vergrendelingsconflicten ontvangt u een algemeen schrijfconflictbericht dat u in staat stelt de record op te slaan, naar het Klembord te kopiëren of de aangebrachte wijzigingen te verwijderen. In sommige gevallen ontvangt u echter een foutbericht met de volgende strekking:
Kan tabel <tabelnaam> niet vergrendelen omdat deze momenteel wordt gebruikt door gebruiker <beveiligingsnaam> op computer <computernaam>.
Opmerking De staat van de informatie in het LDB-bestand zegt niets over de staat van de database. Als een LDB-bestand beschadigd raakt, werkt de database nog steeds naar behoren. Mogelijk wordt er wel onleesbare tekst weergegeven in plaats van gebruikersnamen in vergrendelingsconflictberichten.
Referenties
Met behulp van Microsoft Visual Basic for Applications in Access 2002 of hoger kunt u een lijst weergeven met gebruikers die bij een bepaalde database zijn aangemeld.
Voor meer informatie over de wijze waarop u aangemelde gebruikers kunt controleren en voor een voorbeeldcode klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:
285822Bepalen wie zich bij een database heeft aangemeld met Microsoft Jet UserRoster in Access 2002 of Access 2003