HINWEIS
BEISPIEL
BEISPIEL
Access-Datenbanken im Netzwerk
Grundsätzlich sollten Sie bedenken, dass es sich bei Access-Datenbanken um Desktop-Datenbanken handelt,
d.h., die Datenbanken sollten sich auf dem gleichen System wie die Anwendung befinden.
Sollten Sie dennoch Ihre Access-Datenbank »netzwerktauglich« machen wollen, können Sie die Datenbank
auf einem File-Server ablegen, das Verzeichnis freigeben und den ConnectionString der Anwendung dahin-
gehend anpassen, dass Sie statt eines lokalen Pfades einen Netzwerkpfad angeben. Dies kann auch ein
UNC-Name sein.
ConnectionString für eine im Netzwerk (Computer
P4
, Laufwerk
C:
) freigegebene Access-Datenbank.
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\Server\C$\Test.accdb
Alle aktiven Verbindungen zur Datenbank auflisten
Sicher sind Sie auch schon auf das Problem gestoßen, dass Sie eine Datenbank sperren wollten, aber gleich-
zeitig einige Nutzer mit der Datenbank gearbeitet haben. Der schnellste Weg, dies festzustellen, führt über
die Schemas.
Mit Hilfe der Methode OpenSchema können Sie treiberabhängige Informationen in Tabellenform (Dataset)
abrufen. In unserem Fall nutzen wir das Schema JET_SCHEMA_USERROSTER, das uns eine Tabelle mit
den aktiven Nutzern, deren Login-Namen sowie den jeweiligen Computer-Namen zurückgibt.
Anzeige der aktiven Nutzer
Sub Nutzeranzahl()
Dim rs As ADODB.Recordset
Dim conn As New ADODB.Connection
Dim s1 As String, s2 As String
Set conn = Application.CurrentProject.Connection
Set rs = conn.OpenSchema(ADODB.SchemaEnum.adSchemaProviderSpecific, , _
"{947bb102-5d43-11d1-bdbf-00c04fb92675}")
While Not rs.EOF
s1 = rs.Fields("COMPUTER_NAME").Value
s1 = Left(s1, InStr(s1, Chr(0)) - 1)
s2 = rs.Fields("LOGIN_NAME").Value
s2 = Left(s2, InStr(s2, Chr(0)) - 1)
Debug.Print "Computer: " + s1 + " Login: " + s2
rs.MoveNext
Wend
End Sub
589
Tipps & Tricks

Get Microsoft Office Access 2007-Programmierung - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.