Ich denke, begann können Sie diese so, wie Sie es wollen an die Arbeit zu, wenn Sie einen verwenden "ODBC DSN-LESS connection"
Wenn Sie müssen, halten Ihre ODBC-DSNs auf den Computern Ihrer Benutzer mithilfe der Windows-Authentifizierung. Geben Sie Ihren Benutzern Lesezugriff auf Ihre Datenbank. (Wenn sie eine neue MDB-Datei erstellen und die Tabellen verknüpfen, können sie nur die Daten lesen.)
Erstellen Sie eine SQL-Anmeldung mit Lese-/Schreibberechtigung für Ihre Datenbank.
Schreiben Sie eine VBA-Routine, die Ihre verknüpften Tabellen durchläuft, und setzen Sie die Verbindung zurück, um Ihre SQL-Anmeldung zu verwenden. Achten Sie jedoch darauf, die Syntax "DSN-Less" zu verwenden.
"ODBC;Driver={SQL Native Client};" &
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Uid=myUsername;" & _
"Pwd=myPassword"
Rufen Sie diese Routine als Teil Ihres Startup-Codes auf.
Ein paar Hinweise zu diesem Ansatz:
Zugang scheint mit dem Verbindungsinformationen ein Problem zu haben, wenn Sie von Read/Write ändern Nur zu lesen und versuchen, ohne zurück zu Read/Write Schließen und erneutes Öffnen der Datenbank (mde/mdb). Wenn Sie dies beim Start nur einmal in Lesen/Schreiben ändern und während der Sitzung nicht ändern, sollte diese Lösung funktionieren.
Mit einer DSN - Less-Verbindung können Sie die Anmeldeinformationen des Benutzers im Code verbergen (vorausgesetzt, Sie geben ihnen eine mde-Datei, sollten Sie in Ordnung sein). Normalerweise ist die Codierung von Verbindungssträngen keine gute Idee, aber da es sich um eine Inhouse-App handelt, sollte dieser Ansatz in Ordnung sein.
Sehr vielversprechend. Das bringt meine "fast da" -Lösung noch einen Schritt weiter. Ich werde es später testen, und wenn es funktioniert, vergeben Sie die Akzeptanz. Vielen Dank. – BIBD