Access -> SQL-Server: Tabellen unter der Haube austauschen

Diskutiere und helfe bei Access -> SQL-Server: Tabellen unter der Haube austauschen im Bereich Microsoft Office im Windows Info bei einer Lösung; Sehr geehrte Damen und Herren, ##### Situation ##### wir nutzen Microsoft Access mit Frontend und Backend für eine interne Verwaltungssoftware VS.... Dieses Thema im Forum "Microsoft Office" wurde erstellt von Enomine, 8. Dezember 2020.

  1. Enomine
    Enomine Gast

    Access -> SQL-Server: Tabellen unter der Haube austauschen


    Sehr geehrte Damen und Herren,


    ##### Situation #####
    wir nutzen Microsoft Access mit Frontend und Backend für eine interne Verwaltungssoftware VS. Die Ladezeiten der VS sind sehr langsam, wir nehmen an wegen ineffizienten Datenbankzugriffen. Deswegen soll die Datenbank umgestellt werden auf Microsoft SQL-Server. Ich bin ein Masterstudent und aus Sicht der Firma "extern eingekauft" und habe keine Erfahrung mit Microsoft Access, vollziehe learning by doing.

    ##### SMAA #####
    Wir wissen, dass ein Migrationstool dafür existiert, sehen aufgrund der Vorbedingungen an die DB aber derzeit keine Möglichkeit das Tool SMAA anzuwenden. Außerdem möchten wir die DB grundlegend überdenken und normalisieren. Statt SMAA haben wir uns überlegt die Datenbank händisch in SQL-Server nachzubilden und diese neu im Access Frontend zu verlinken.

    ##### Grundproblem #####
    Wir möchten alle, also 20-40 Tabellen in SQL-Server abbilden und im Access Frontend statt der bisherigen benutzen. "dbo_Projekte" haben wir probeweise über Externe Daten -> ODBC-Datenbank hinzugefügt. Diese soll "Projekte" ersetzen. Bild 1

    [​IMG]

    Über Datenbanktools -> Objektabhängigkeiten sind wir der Meinung alle Vorkommnisse der Tabelle herausfinden zu können. Wir denken auf jedes Formular doppelklicken zu müssen, in dem Eigenschaftenblatt unter dem Dropdownfeld "Formular" auszuwählen und dann bei Datensatzquelle mit rechtsklick auf die "..." mithilfe der Zoom-Funktion die Tabelle beim SQL-Befehl hinter "FROM" umbenennen müssen von "Projekte" auf "dbo_Projekte". Bild 2

    [​IMG]

    ##### Frage #####
    Dies erscheint sehr mühsehlig und Fehleranfällig.
    Was ist Ihrer Meinung nach der beste und sicherste Weg, um die Migration durchzuführen?
    Ist es beispielsweise möglich die Tabelle / Datenbank direkt unter der Haube zu ersetzen ohne im "Quelltext" Änderungen machen zu müssen? Also sodass die Tabelle "Projekte" auf den SQL-Server zugreift anstatt auf die Access-Backend Datei? Bild 3

    [​IMG]

    Dankeschön


    Michael
     
  2. Karl Donaubauer Win User

    Access -> SQL-Server: Tabellen unter der Haube austauschen

    Hallo!

    Zunächst kann man ohne Kenntnis des Ausgangssystems, Nutzeranzahl etc. nichts dazu sagen, ob eine Konvertierung auf SQL Server notwendig ist und wie aufwändig sie sein wird. Auch nicht, ob SSMA sinnvoll ist. Wenn die Struktur, Datentypen etc. des Access-Backends
    nicht schwer daneben sind, dann im Normalfall schon. Aber natürlich geht's auch mit dem Neuerstellen der Tabellen und Beziehungen zu Fuß.

    Vom bloßen Wechsel des Backends von Access auf SQL Server sollte man sich übrigens keine Performancewunder erwarten. Das hängt davon ab, wie sehr Abfragen, Codes, Datenherkünfte usw. auf Access "fixiert" waren bzw. wie performanceschwach sie formuliert waren.
    Das wird dann mit dem Server nicht unbedingt automatisch besser. In manchen Fällen ist die Performance nachher sogar schlechter. Das sollte man möglichst schon vorher abklären und ggf. im Rahmen der Konvertierung an den SQL Server anpassen.

    Was die Namen betrifft, so lässt man i.d.R. den Schemanamen "dbo_" als Vorsilbe bei der eingebundenen Tabelle nicht stehen, sondern entfernt ihn. Dann könnte sich das Problem mit "Projekte" reduzieren.

    Wenn man wirklich Tabellennamen ändern muss, dann empfiehlt sich die Verwendung eines universellen Suchen/Ersetzen-Tools wie

    Find and Replace
    , denn die Tabellennamen können in allen möglichen Eigenschaften, Ausdrücken, VBA-Codes und Objekten verwendet worden sein.
  3. Peter Doering Win User

    Access -> SQL-Server: Tabellen unter der Haube austauschen

    Hallo,

    Im Zoom-Fenster deiner Abfrage kann man erst die Feldliste sehen, danach einen * vor FROM. Das bedeutet, dass nach der Feldliste
    alle Felder aller Tabellen angezeigt werden, auch die, die schon in der Feldliste stehen. Ich bezweifle, dass das gewollt ist und in jedem Fall kann sowas Performance-Probleme erzeugen. Man sollte jedes Feld, das
    die Abfrage liefern soll, einzeln per Feldname angeben.

    Des Weiteren werden alle Tabellen per Outer Join verknüpft. Ist das notwendig? Falls nicht, gäbe es auch hier durch Umstellung auf Inner Join Potential zur Optimierung.

    Als nächstes würde ich prüfen, ob alle Felder, die im Join vorkommen, einen Index haben, und falls nicht, anlegen.

    Zum Thema SSMA (SQL Server Migration Assisstant)

    Ich würde ihn auf jeden Fall einmal über die DB laufen lassen, weil der Report nützliche Informationen über die Machbarkeit der Migration liefert, z.B. ob jede Tabelle einen Primärschlüssel enthält. Sollte es tatsächlich zur Migration kommen, würde er dir
    auch beim Verknüpfen der Tabellen helfen, nämlich die lokalen Tabellen umbenennen und die verknüpften mit Original-Namen einbinden. Das dbo_-Problem gäbe es dann nicht.

    Ein weiteres hilfreiches Tool ist der
    Total Access Analyzer
    (nicht kostenlos, aber es gibt eine Test-Version), der die Anwendung analysiert und viele hilfreiche Tipps gibt.

    Gruss - Peter
  4. Reiner Berger Win User

    Access: Datumformat wird in eingebundenen Tabellen falsch übernommen

    Ich habe eine für mich gangbare Lösung gefunden:

    Der SQL Server Migration Assistant for Access 8.8.0 weist bei der Uebername von Access-Tabellen in eine SQL-Server DB
    Datumfeldern den Datentyp "datetime2" zu. Werden die SQL Server Tabellen in ein Access FE eingebunden ist der "datetime2" Datentyp für Datumfelder in Access zu lang und Access weist dem Feld
    automatisch den Datentyp "Text kurz" zu.

    Beim Ausprobieren merkte ich dass der SQL Server Datentyp "datetime" (ohne die 2) in Access korrekt in ein Datumformat umgesetzt wird das mir in den Formularen und auf den Berichten das Datum wie gewünscht anzeigt.

    Der Rest war dann, bei knapp 100 Tabellen, nur noch Fleissarbeit. In Access darf dann aber nicht vergessen werden die Links der eingebundenen Tabellen zu aktualisieren.

    Die Views waren etwas aufwendiger da das Aktualisieren mit dem SSMS 17.9 und dem dbForge Studio Express 5.8.107 nicht funktionierte.

    View im Design-Modus öffnen, alle Datum-Felder löschen, View speichern und schliessen.

    View im Design-Modus öffnen, alle Datum-Felder wieder einfügen, View speichern und schliessen.In Access die Links der eingebundenen Views aktualisieren.

    Ich hoffe das hilft irgendwann jemandem.

    Herzliche Grüsse

    Reiner
  5. Josef Pötzl Win User

    Access Services DB mit ACCDB Tabellen verlinken

    Hallo!

    Eine Access-DB in die "Access-Services"-DB zu verlinken wird nicht funktionieren. Welchen Feature-Zuwachs erwartet du vom Verlinken eine File-DB in einem aktiven DBMS?

    Umgekehrt funktioniert es schon. Du kannst in einem accdb-Client die Tabellen aus dem SQL-Server verlinken, der für die Access-Services verwendet wird. (Bei Office 365 ist das ein Azure SQL-Server.) Dann kannst du Grundfunktionalitäten über die Access Services
    im Sharepoint nutzen und für spezielle Anforderungen VBA in einem Access-Client verwenden.

    mfg

    Josef
  6. Karl Donaubauer Win User

    Access 2016 Nordwind

    Hallo, Kyle!

    Ich wiederhole meinen Hinweis, mit dem ich deinem Kollegen Diego_B vor 2 Wochen hier auf den gleichen Fehllink antwortete:

    *****************

    Der Download, den du da verlinkt hast, ist eine reine SQL Server-Datenbank, nämlich die uralte Portierung der bloßen ursprünglichen Access-Nordwind-Tabellen auf SQL Server 2000. Dieser Download ist nicht die Access-Beispiel-Datei mit Oberfläche etc., die
    die Leute hier suchen.

    *****************
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Access -> SQL-Server: Tabellen unter der Haube austauschen - Microsoft Office

Die Seite wird geladen...

Access -> SQL-Server: Tabellen unter der Haube austauschen - Similar Threads - Access SQL Server

Forum Datum

Access Frontend und SQL Server Backend

Access Frontend und SQL Server Backend: Ich habe eine View auf einem SQL Server mit der lokalen Access-DB verknüpft und möchte eine einfach SELECT * INNER JOIN ON access.a = SQLServer.b durchführen. DB und SQL Server sind auf dem...
Microsoft Office 11. Januar 2024

sql server kann nicht installiert werden

sql server kann nicht installiert werden: Hallo,ich kann auf meinem Notebook keinen SQL Server instalieren. Es kommt immer die selbe Fehlermeldung "Fehler beim Warten auf das Wiederherstellungshandle des Datenbankmoduls"
Apps 18. September 2023

sql server kann nicht installiert werden

sql server kann nicht installiert werden: Hallo,ich kann auf meinem Notebook keinen SQL Server instalieren. Es kommt immer die selbe Fehlermeldung "Fehler beim Warten auf das Wiederherstellungshandle des Datenbankmoduls"
Games und Spiele 18. September 2023

Access Tabelle

Access Tabelle: Hi Ich wollte ein Feld in der Tabelle erstellen, das immer das aktuelle Datum erhält. Habe die Heute Funktion als Standardwert eingegeben, aber wenn ich die Tabelle speichern will kommt eine...
Microsoft Office 29. Juni 2020

Sql server auf pro x

Sql server auf pro x: Hallo. Kann man Anwendungen, welche den Microsoft sql server 2008 benötigen am pro x ausführen? Danke für die Antwort
Surface 9. Dezember 2019

SQL-Server - Version?

SQL-Server - Version?: Hallo, Ich verwende Access2016 (unter Windows 10) und möchte Beispieldatenbank(en) herunterladen. Wie finde ich heraus welche Version SQL-Server installiert ist? Für die Beantwortung vielen...
Microsoft Office 20. Dezember 2017

SQL Server 2016 FileTable

SQL Server 2016 FileTable: Hallo zusammen, ich habe in SQL Server 2016 eine FileTable eingerichtet und versuche nun im Windows 10 Explorer per Drag and Drop ein Verzeichnis mit zwei Dateien in das FileTable-Verzeichnis...
Microsoft Office 20. Januar 2017
Access -> SQL-Server: Tabellen unter der Haube austauschen solved
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.