Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Datenbank "MASTER" möglich?

Begonnen von datekk, April 10, 2018, 16:47:39

⏪ vorheriges - nächstes ⏩

datekk

Ich habe für meine Anwendung eine SQL Datenbank entworfen. Nun möchte ich diese Anwendung an einen anderen Geschäftspartner geben. Diese sollte eine eigene SQL Datenbank auf meinem Server erhalten. Das Frontend (Access) bleibt ja gleich, die neuen Zugangsdaten müssten in Access dann für den neuen Kunden eingegeben werden.

Jetzt zu meiner Fragestellung: Die Anwendung soll sich ja stetig weiter entwickeln - dementsprechend entwickelt sich ja auch die Datenbank immer weiter. Neue Tabellen werden angelegt, neue Prozeduren bereitgestellt. Wenn ich nun z.B. 10 Kunden habe möchte ich ja nun nicht jede der 10 Kundendatenbanken ändern.

Gibt es sowas wie eine Art Master Datenbank aus der man dann wie eine art untergeordnete Datenbanken erstellen kann? Änderungen am Master wirken sich dann auf alle untergeordneten Datenbanken aus.

Wenn ja, (wie) kann ich aus meiner bestehenden Datenbank einen solchen Master erstellen?

LG
datekk
Access 2016 mit SQL Server Backend. Bereits umgesetzt: Access mit MS SQL Backend,  ADODB Formularbindung, Streamen von Dateien zum SQL Server und zurück (Filestream), Drag&Drop Dateiupload zum Server, CTI / TAPI Integrierung in Access Anwendung - Nutzung auch über Remote Desktop, selbst aktualisierendes Access Frontend auf entfernten Rechnern (Upgrade). Berichte / Kreuztabellen mit SQL Server Backend, Mail Tagging, Outlook Steuerung über Access und umgekehrt // Grundwissen in .Net Core & Blazor Apps

PhilS

Zitat von: datekk am April 10, 2018, 16:47:39Gibt es sowas wie eine Art Master Datenbank aus der man dann wie eine art untergeordnete Datenbanken erstellen kann? Änderungen am Master wirken sich dann auf alle untergeordneten Datenbanken aus.
Zum Teil gibt es das bereits eingebaut. Nämlich über die Datenbank model, die die Vorlage für alle neuen Datenbanken darstellt. - Über die genaue Funktionsweise solltest du dich aus der Doku informieren, da mein Kenntnisstand über 10 Jahre alt ist.

Dies wird aber vermutlich nur für das Szenario, dass für einen komplett neuen Kunden eine komplett neue Datenbank erstellst, anwendbar sein.

Wenn du mehrere bestehende Datenbanken mit bereits bestehenden Datenbeständen warten und aktualisieren willst, bleibt dir aus meiner Sicht keine andere Möglichkeit als entweder selbst deine Datenbankenänderungen als Script zu speichern und damit alle Datenbanken zu aktualisieren oder ein Tool wie SQL-Compare zu verwenden, dass verschiedenen Datenbankstrukturen abgleicht.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

ebs17

Wenn ein Kunde die DB-Anwendung bereits hat, gibt es ja nichts neu zu erstellen.
Das Frontend wird schlicht ausgetauscht durch das neue.
Für Strukturänderungen am Backend erstellt man ein Script, das entsprechende Anweisungen (DDL, ADOX, DAO) ausführt.
Mit freundlichem Glück Auf!

Eberhard

Wurliwurm

Zitat von: datekk am April 10, 2018, 16:47:39
Jetzt zu meiner Fragestellung: Die Anwendung soll sich ja stetig weiter entwickeln - dementsprechend entwickelt sich ja auch die Datenbank immer weiter. Neue Tabellen werden angelegt, neue Prozeduren bereitgestellt.

Das ist jetzt eigentlich kein Access-Thema, sonder ein Datenbankadminthema. Da mußt Du die SQL-Server Doku checken. Auf jeden Fall wird es lösbar sein mit einem Script, das hintereinander die Create Table-Anweisungen etc. pp beinhaltet. So ein Script beinhaltet alles, um eine neue Datenbank aufzubauen. Ob Microsoft da zusätzlich mächtige Tools bereitstellt, weiß ich jetzt nicht, ich gehe aber davon aus.

Änderung an der Datenbank solltest Du nicht vom Access-Client aus machen, sondern direkt mit dem Datenbankmanagementtool.