Office: Starker Mehrbenutzerbetrieb in Access

Helfe beim Thema Starker Mehrbenutzerbetrieb in Access in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; \@Nouba Der Link verweist noch auf einiges andere was man beim benutzen von MySQL beachten sollte *Smilie Wichtig zum Beispiel der Aufbau der MySQL... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Kluhtu, 20. Dezember 2017.

  1. Starker Mehrbenutzerbetrieb in Access


    \@Nouba
    Der Link verweist noch auf einiges andere was man beim benutzen von MySQL beachten sollte *Smilie
    Wichtig zum Beispiel der Aufbau der MySQL Tabellen, da gibst zu Acces nämlich unterschiede. Oder die Einstellungen des ODBC connectors.
    Dein Fazit ist also etwas aus der Spur, da gerade Neuanwender diese Infos benötigen wennSie MySQL als BE verwenden wollen.

    Wenn dir der Artikel zu gebunden und ungebunden nicht gefällt, dann kannst Du ihn ja in Deinem Sinne für die Allgemeinheit verbessern. Ist ja ein Wiki *Smilie

    VG
    trekking
     
    trekking1, 23. Dezember 2017
    #16
  2. \@Trekking,

    weil ich kein MySQL verwende, kann ich mir das Editieren des Artikels verkneifen. *Smilie

    PS: allein schon der notwendige [Um]Weg ADO -> OLEDB (via Microsoft OLEDB Provider for ODBC) -> MySQL Connector ODBC würde mir den Spaß an der Sache nehmen. Und aktuelle professionelle OLEDB-Treiber (der Treiber von CherrySoft stammt aus dem Jahr 2010) scheint es ja wohl nicht zu geben.
     
  3. \@Nouba

    Dann wirds halt so stehen bleiben. Bekannterweise stört mich das ja nicht *Smilie
    Handelt es sich ja nur um eine Auflistung der Vor- und Nachteile wenn man wie arbeitet ohne technische Hintergründe.

    Das mit dem OLEDB Provider verstehe ich nicht. Benutze nur den MySQL Connector und verweise im Connection string darauf.

    Code:
    Würde mich freuen wenn Du mir das erklären könntest wie Du das meinst.

    VG
    trekking
     
    trekking1, 23. Dezember 2017
    #18
  4. Starker Mehrbenutzerbetrieb in Access

    \@Trekking,

    die ActiveX Data Objects stellen einen Layer (Softwareschicht) dar, die Verbindungen zu OLEDB-Providern herstellen, welche wiederum mit speziellen Daten(bank)systemen kommunizieren. Access (bzw. VBA) kann leider nicht direkt mit einem OLEDB-Provider kommunizieren, was den Idealfall dieser Technologie darstellen würde. Da es für MySQL z. Zt. keinen aktuellen OLEDB-Provider gibt, wird der OLEDB ODBC-Provider von Microsoft als weiterer Layer dazwischen geschoben, welcher dann mit dem MySQL-ODBC Treiber kommuniziert.

    Mein Anspruch an ein Datenbanksystem, mit dem ich über ADO kommuniziere, wäre, auf die Umeitung über den OLEDB ODBC-Provider von Microsoft verzichten zu können, was natürlich nur funktioniert, wenn es einen entsprechendenden OLEDB-Provider gibt.

    Deshalb ist für mich MySQL in Verbindung mit Access als FE kein ernsthaftes Thema - zumal es gute Ausweichmöglichkeiten gibt. Für anderen Programmierumgebungen stellt MySQL sicherlich eine sehr leistungsfähige Datenbank dar, deren Leistung z. Bsp. noch durch die sehr guten ODBC-Treiber von DevArt gepusht und richtig genutzt werden kann.
     
  5. \@Nouba

    Danke für die Erklärung. Habe mal etwas gegoogelt und einiges widersprüchliches gefunden. Zum Beispiel , dass der Zugriff auf SQL Server ab 2012 keine OLE DB mehr enthalten wird und MS ODBC empfiehlt. Werde mich da mal bei Gelegenheit nochmal mit auseinandersetzen. Heute war Heilig Abend wichtiger *Smilie

    Dir noch schöne Feiertage.

    VG
    trekking
     
    trekking1, 24. Dezember 2017
    #20
  6. \@Trekking,

    das Vorhaben hat Microsoft wohl revidiert - siehe: Announcing the new release of OLE DB Driver for SQL Server.

    Das Problem aus Sicht des Access-Entwicklers und später auch auch Anwenders ist und bleibt jedoch, dass weder ODBC via DAO (das war zu Zeiten der RDO mittels ODBC-Direct schon einmal besser) noch ADO befriedigend implementiert sind. Bei verknüpften Views/Tabellen startet Access unkontrolliert Round-Trips zum Server (u.a. Artefakte, die auch im DBWiki-Artikel aufgeführt sind) und bei ADO-Recordsets geht Funktionalität verloren (drücke einmal Taste F5 in einem Formular, das an ein ADO-Recordset gebunden ist). Passthrough-Queries sind wohl eher etwas für masochistisch veranlagte Entwickler und aus meiner Sicht nur in Einzelfällen akzeptabel.

    Die geschilderte Szenerie lässt Access als RAD-Tool deshalb nicht unbedingt im Glanz des Sonnenscheins erstrahlen.

    ... wünsche Dir natürlich auch noch schöne Feiertage.
     
  7. \@Nouba,
    wird der MS OLEDB Provider für ODBC automatisch verwendet sobald man eine ADO.Connection via ODBC Provider erstellt - wie also hier im Falle von MySQL.

    Man fragt sich natürlich unwillkürlich, wie viel Performance das kostet, aber es wird schon nicht so schlimm sein.

    LG Markus
     
  8. Starker Mehrbenutzerbetrieb in Access

    \@Nouba

    Danke für die Infos. MS ist ja bekannt dafür mal hi und da wieder etwas zurückzunehmen *Smilie
    Das mit F5 kann ich nicht ausprobieren, da ich Forms immer an disconnected RS binde. Der Effekt wird hier ein anderer sein *Smilie
    PT Abfragen benutze ich nur, wenn ich Daten vom BE in Lokale Tabellen schreibe um zum Beipiel Berichte zu erstellen. Das funktioniert aufgrund der ausgewählten Daten sehr gut.
    Was ich komplett bestätigen kann ist, dass die Performance bei Verknüpften Tabellen von MySQL nach Access schlechter ist als wenn man es mit disconnected RS löst. Gerade wenn es sich um größere Datenmengen handelt. Das scheint wohl mit dem von Dir vermitteltem zusammenzuhängen.

    Was interessant für mich war, war zu sehen, dass Access mit MySQL als BE und disconnected RS als Grundlage für eine Form mit Datenblatt deutlich schneller war als Access mit Access als BE mit verknüpften Tabellen und Abfragen als Grundlage eines Forms mit Datenblatt. (ca. 3000 DS)

    VG
    trekking
     
    trekking1, 25. Dezember 2017
    #23
  9. \@Trekking,

    gerade bei einem disconnected Recordset wirst Du beim Tastendruck F5 erstaunt ein. *Smilie

    @markus,

    ich kenne keine andere Schnittstelle ODBCOLEDB als die genannte.
     
  10. \@Nouba

    Es kommt eine Fehlermeldung, dass der Datenprovider nicht initialisiert werden kann und im Datenblatt selbst ändert sich nichts. Das hatte ich so erwartet.

    Habe das an verschiedenen Stellen probiert und immer gleich.
    Was hätte denn kommen sollen?

    VG
    trekking
     
    trekking1, 25. Dezember 2017
    #25
  11. \@Trekking,
    gibst du jetzt einen Provider an - und wenn ja welchen, wenn du eine Connection erstellst? Wenn nein, nehme ich an dass die erstelle Connection trotzdem einen Provider aufweist, wenn ja welchen.

    Vielleicht kannst du auch einen Zeitvergleich testen:
    Messe einfach mal den Zeitvergleich, wenn du ein Recordset mit der größten Tabelle öffnest (Select * from Tabelle).

    ADO:
    Code:
    ADO ClientCursor
    Code:
    DAO:
    Code:
    Bitte die DAO Database per Code öffnen und keine Verknüpfung verwenden.
    Die Tabelle sollte wenigstens 10 MB haben.
    Das wäre super.
    LG Markus
     
  12. \@Markus
    Der Connection string enthält keinen Provider.

    Code:
    Was die Geschwindigkeitsmessung betrifft habe ich da leider gerade keine Zeit dafür. Wenn es dir aber wichtig ist, dann werde ich das mal im neuen Jahr machen.

    Die Cursor location ist bei mir default client. Das hängt mit den disconnected RS zusammen. Die connection ist in einer Klasse gekapselt. Diese kann ich dann entsprechend bestehen lassen oder Zerstören je nach Anwednung und die cursor location eintstellen.

    Laut Nouba benutzt MS trotzdem einen Provider. Nämlich den OLE DB Provider. Leider habe ich jetzt trotz intensiver suche dazu nichts gefunden. Wäre super wenn Nouba hier mal einen Link hätte. Gerne auch in Englisch.

    VG
    trekking
     
    trekking1, 27. Dezember 2017
    #27
  13. Starker Mehrbenutzerbetrieb in Access

    \@trekking, das mit dem Connection String ist mir klar.
    Ich rede aber vom Connection Objekt, sobald es erstellt ist - ob die Provider Property gesetzt ist.
     
  14. Das ist korrekt.
    Der vollständige Name lautet Microsoft OLE DB Provider for ODBC Drivers, der kurze Name, den du in einem Connection String verwendest ist, MSDASQL.

    Es gibt einen MSDN-Blogpost mit einer Erklärung der Funktionsweise des MSDASQL Providers.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  15. Generelle Aussagen über Geschwindigkeiten lassen sich schlecht treffen, denn es hängt immer davon ab, welchen Zweck das Recordset erfüllen soll. Hier mal ein Test (allerdings ohne Formularanbindung) für verschiedene Recordsets auf eine PostgreSQL-Datenbank, die auf meinem macbook verweilt, während Access 2010 auf einem 10 Jahre alten Netbook läuft (moderne Hardware dürfte also um einiges schneller sein).
    Code:
    Hier die Resultate eines Testlaufs:
    PMDAPGS (adUseServer)
    ==================================================

    Loop 1: 1,707031 sec; Loop 2: 1,296875 sec; Loop 3: 1,269531 sec; Loop 4: 1,277344 sec; Loop 5: 1,273438 sec;
    Total Time: 7,011719 sec
    Avg duration per loop for 72591 records: 1,364844 sec

    PMDAPGS (adUseClient)
    ==================================================

    Loop 1: 1,871094 sec; Loop 2: 2,003906 sec; Loop 3: 1,941406 sec; Loop 4: 2,007813 sec; Loop 5: 1,902344 sec;
    Total Time: 9,808594 sec
    Avg duration per loop for 72591 records: 1,945313 sec

    MSDASQL (adUseClient)
    ==================================================

    Loop 1: 2,808594 sec; Loop 2: 2,832031 sec; Loop 3: 2,746094 sec; Loop 4: 2,816406 sec; Loop 5: 3,355469 sec;
    Total Time: 14,74609 sec
    Avg duration per loop for 72591 records: 2,911719 sec

    MSDASQL (adUseClient)
    ==================================================

    Loop 1: 3,519531 sec; Loop 2: 3,328125 sec; Loop 3: 3,433594 sec; Loop 4: 3,359375 sec; Loop 5: 3,421875 sec;
    Total Time: 17,10547 sec
    Avg duration per loop for 72591 records: 3,4125 sec

    DAO (PassThrough)
    ==================================================

    Loop 1: 10,41016 sec; Loop 2: 10,40234 sec; Loop 3: 10,47656 sec; Loop 4: 10,35547 sec; Loop 5: 10,62109 sec;
    Total Time: 52,73047 sec
    Avg duration per loop for 72591 records: 10,45313 sec

    DAO (with linked Table)
    ==================================================

    Loop 1: 1,015625 sec; Loop 2: 1,0625 sec; Loop 3: 0,90625 sec; Loop 4: 1,050781 sec; Loop 5: 1,0625 sec;
    Total Time: 5,171875 sec
    Avg duration per loop for 72591 records: 1,019531 sec

    DAO readonly (with linked Table)
    ==================================================

    Loop 1: 0,9960938 sec; Loop 2: 0,9960938 sec; Loop 3: 0,9335938 sec; Loop 4: 1,007813 sec; Loop 5: 1,128906 sec;
    Total Time: 5,097656 sec
    Avg duration per loop for 72591 records: 1,0125 sec
     
Thema:

Starker Mehrbenutzerbetrieb in Access

Die Seite wird geladen...
  1. Starker Mehrbenutzerbetrieb in Access - Similar Threads - Starker Mehrbenutzerbetrieb Access

  2. Stärkste Kombination berechnen/ausgeben

    in Microsoft Excel Hilfe
    Stärkste Kombination berechnen/ausgeben: Hallo, ich bräuchte Hilfe um mir eine automatische Berechnung der stärksten Teamkombination nach ihren jeweiligen Fähigkeiten ausgeben zu lassen. Und zwar habe ich in den Zeilen die jeweiligen...
  3. Ändern der Farbe, Art oder Stärke einer Linie in Word für Mac

    in Microsoft Excel Tutorials
    Ändern der Farbe, Art oder Stärke einer Linie in Word für Mac: Ändern der Farbe, Art oder Stärke einer Linie in Word für Mac Excel für Microsoft 365 für Mac Word für Microsoft 365 für Mac PowerPoint für Microsoft 365 für Mac Word...
  4. Ändern der Farbe, Art oder Stärke einer Linie

    in Microsoft Excel Tutorials
    Ändern der Farbe, Art oder Stärke einer Linie: Ändern der Farbe, Art oder Stärke einer Linie Excel für Microsoft 365 Word für Microsoft 365 Outlook für Microsoft 365 PowerPoint für Microsoft 365 Publisher...
  5. Teilen von CatiaV5-Inhalten (CAD) nicht möglich wegen starken Flackerns

    in Microsoft Teams Hilfe
    Teilen von CatiaV5-Inhalten (CAD) nicht möglich wegen starken Flackerns: Hallo Zusammen, beim Teilen von Bildschirminhalten des CAD-Programms Catia V5 (Dassault) tritt in Teams ein relativ niederfrequentes Flackern des geteilten Fensters auf. Offensichtlich wird der...
  6. MacBook-Lüfter dreht stark auf bei MS Teams Video Konferenz

    in Microsoft Teams Hilfe
    MacBook-Lüfter dreht stark auf bei MS Teams Video Konferenz: Hallo beim Benutzen von MS Teams in einer Videokonferenz dreht der Lüfter meines neuen MacBook Air 2020 derart auf, dass ich die Konferenzteilnehmer kaum verstehen kann. Die Software ist auf dem...
  7. Audiodatei verliert bei Einbettung in PP 2019 stark an Qualität - Autokomprimierung?

    in Microsoft PowerPoint Hilfe
    Audiodatei verliert bei Einbettung in PP 2019 stark an Qualität - Autokomprimierung?: Hallo liebe Leute, ich habe folgendes Problem und würde mich sehr freuen falls ihr helfen könnt. In der Suche habe ich nichts passendes finden können. Wenn ich eine von mir aufgenommene...
  8. Text Kalendereintrag vergrößern, Kalenderlinien stärker

    in Microsoft Outlook Hilfe
    Text Kalendereintrag vergrößern, Kalenderlinien stärker: [ATTACH][ATTACH] Hallo liebe Forumsmitglieder, ich brauche Ihre Hilfe. Ich habe auf meinem PC Windows 1o und Office 2019 Professional Plus. 1. Ich möchte gerne in Outlook, Kalendereintrag, den...
  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.
    Information ausblenden