Zugriff auf SQL-Server: PassThrough aus MSAccess gegenüber ADO.Net aus VB Studio
Grüezi mitenand
Grundsatzfrage:
Vor Jahren habe ich mit einem Access FrontEnd (Version 2.0) auf eine SQL-Datenbank per PassThrough zugegegriffen. Die etwas kompliziertere Programmierung gegenüber eingebundenen Tabellen war aus Performancegründen angebracht.
Nun möchte ich ein neues Projekt starten und finde nirgends einen Hinweis darauf, ob die Zugriffstechnik, welche mir VisualStudio mit ADO.NET bietet, mit den Pass-Through Abfragen von Access vergleichbar ist.
Kurz gefragt: Wenn ich mit ADO.NET ein Datagrid erstellen, die Datensource auf eine Tabelle oder auf eine View lege: Werden dann fortlaufend Aktualisierungsanfragen vom Client an den Server gesendet?
Und ändere ich die Abfrage per Code auf einzelne Datensätze, wird die Abfrage auf dem Server ausgeführt oder muss ich dafür serverseitige Prozeduren anlegen?
Oder kann ich dies wie mit dem DAO-Zugriff je nach Abfrage parametrieren?
Oder spielt dies bei meiner geplanten Applikation von ca. 15 Benutzern für ein rudimentäres ERP mit einem Artikelstamm von 50'000 Artikeln und einer Auftragsverwaltung von ca. 2 Mio Datensätzen gar keine Rolle?
Finde irgendwie den Einstieg nicht.
Ob ich jetzt mit VisualStudio oder mit Access (Office 365) ein Frontend erstelle hängt von dieser Antwort ab.
Gruss
Roland
Grundsatzfrage:
Vor Jahren habe ich mit einem Access FrontEnd (Version 2.0) auf eine SQL-Datenbank per PassThrough zugegegriffen. Die etwas kompliziertere Programmierung gegenüber eingebundenen Tabellen war aus Performancegründen angebracht.
Nun möchte ich ein neues Projekt starten und finde nirgends einen Hinweis darauf, ob die Zugriffstechnik, welche mir VisualStudio mit ADO.NET bietet, mit den Pass-Through Abfragen von Access vergleichbar ist.
Kurz gefragt: Wenn ich mit ADO.NET ein Datagrid erstellen, die Datensource auf eine Tabelle oder auf eine View lege: Werden dann fortlaufend Aktualisierungsanfragen vom Client an den Server gesendet?
Und ändere ich die Abfrage per Code auf einzelne Datensätze, wird die Abfrage auf dem Server ausgeführt oder muss ich dafür serverseitige Prozeduren anlegen?
Oder kann ich dies wie mit dem DAO-Zugriff je nach Abfrage parametrieren?
Oder spielt dies bei meiner geplanten Applikation von ca. 15 Benutzern für ein rudimentäres ERP mit einem Artikelstamm von 50'000 Artikeln und einer Auftragsverwaltung von ca. 2 Mio Datensätzen gar keine Rolle?
Finde irgendwie den Einstieg nicht.
Ob ich jetzt mit VisualStudio oder mit Access (Office 365) ein Frontend erstelle hängt von dieser Antwort ab.
Gruss
Roland
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 345588
Url: https://administrator.de/contentid/345588
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
7 Kommentare
Neuester Kommentar
Hi
um es vorneweg gleich zu sagen: Nimm NICHT Access
Ansonsten ist deine Frage ein bisschen ... wirr ...
Was das Programm macht, liegt am Ende natürlich in deiner Hand. Du bist ja der Programmierer.
Grundsätzlich lassen sich mit den typisierten Datasets im VS sehr schnell und Einfach Datenbanken anzapfen und im Programm darstellen & manipulieren.
Wie die sich verhalten, hängt von der Konfiguration und Programmierung ab.
Das Dataset hat eine update und Refresh methode, die entweder die aktuellsten Daten von der DB holt oder die Änderungen im Grid in die DB schubbst.
Wie man damit umgeht, musst du dir halt mal ansehen. Gibt tausende Tutorials dazu.
um es vorneweg gleich zu sagen: Nimm NICHT Access
Ansonsten ist deine Frage ein bisschen ... wirr ...
Was das Programm macht, liegt am Ende natürlich in deiner Hand. Du bist ja der Programmierer.
Grundsätzlich lassen sich mit den typisierten Datasets im VS sehr schnell und Einfach Datenbanken anzapfen und im Programm darstellen & manipulieren.
Wie die sich verhalten, hängt von der Konfiguration und Programmierung ab.
Das Dataset hat eine update und Refresh methode, die entweder die aktuellsten Daten von der DB holt oder die Änderungen im Grid in die DB schubbst.
Wie man damit umgeht, musst du dir halt mal ansehen. Gibt tausende Tutorials dazu.
Hallo,
Du meinst sicherlich vor Jahrzehnten
https://support.microsoft.com/de-de/help/303968/how-to-create-an-sql-pas ...
Access 2013 https://www.experts-exchange.com/questions/28691796/How-to-Run-a-Pass-th ...
Allgemeines: https://msdn.microsoft.com/en-us/library/office/jj618413.aspx
https://docs.microsoft.com/en-us/sql/odbc/microsoft/microsoft-access-dat ...
https://support.office.com/en-us/article/Link-to-SQL-Server-data-0474c16 ...
Access 2016 mal testen und die Zugriffe auf dein uns ungenannten SQL Server testen. Hat sich seit Access 2.0 fast alless verändert, der Name allerdings nicht
http://www.giga.de/downloads/microsoft-office-2016/tipps/office-2016-gr ...
Gruß,
Peter
Du meinst sicherlich vor Jahrzehnten
auf eine SQL-Datenbank per PassThrough zugegegriffen
Hier für Access 2007 https://support.office.com/en-us/article/Process-SQL-on-a-database-serve ...https://support.microsoft.com/de-de/help/303968/how-to-create-an-sql-pas ...
Access 2013 https://www.experts-exchange.com/questions/28691796/How-to-Run-a-Pass-th ...
Allgemeines: https://msdn.microsoft.com/en-us/library/office/jj618413.aspx
https://docs.microsoft.com/en-us/sql/odbc/microsoft/microsoft-access-dat ...
https://support.office.com/en-us/article/Link-to-SQL-Server-data-0474c16 ...
Access 2016 mal testen und die Zugriffe auf dein uns ungenannten SQL Server testen. Hat sich seit Access 2.0 fast alless verändert, der Name allerdings nicht
http://www.giga.de/downloads/microsoft-office-2016/tipps/office-2016-gr ...
Gruß,
Peter
oh ok jetzt kommt Licht ins Dunkle
Also grundsätzlich macht das Ding eine Query, die es an den SQL gibt. Der macht dann, was du ihm sagst. Frägst du nach "Bünzli" und es gibt nur einen davon, dann bekommst du auch nur einen.
Das hängt natürlich davon ab wie du die Abfragen gestaltet hast. Liegt nach wie vor in deiner Hand
Du kannst natürlich auch ein Dataset/Grid erst mal mit allem was der SQL so hat befüllen und dann im nachhinein Filtern. Je nach dem ist das die schnellere Variante, aber halt auch recht Ressourcenintensiv
Also grundsätzlich macht das Ding eine Query, die es an den SQL gibt. Der macht dann, was du ihm sagst. Frägst du nach "Bünzli" und es gibt nur einen davon, dann bekommst du auch nur einen.
Das hängt natürlich davon ab wie du die Abfragen gestaltet hast. Liegt nach wie vor in deiner Hand
Du kannst natürlich auch ein Dataset/Grid erst mal mit allem was der SQL so hat befüllen und dann im nachhinein Filtern. Je nach dem ist das die schnellere Variante, aber halt auch recht Ressourcenintensiv
Hallo,
Access über Internet = grottenschlecht
SQL über Internet kann auch grottenschlecht sein, hängt vom Programmkonzept unddessen umsetzung (Programmierung) ab.
Gruß,
Peter
Zitat von @Lollipop:
erzeuge ich mit eingebundenen Tabellen einen hohen Datenverkehr zwischen Access und SQL-Server
Pobiere die verschiedene Techniken aus die dir gefallen oder nicht. Nimm dazu auch einen Wirschark und lass den nur deine Pakete mittschnüffeln wo auch deine SQl drin ist. Wireshark sagt dir auch wie wenige oder viele Bits und Bytes über deine Leitung gehen. Dann siehst du evtl. was wo wie bewirkt und ob dies deine gewünschten resultate gleichkommt,erzeuge ich mit eingebundenen Tabellen einen hohen Datenverkehr zwischen Access und SQL-Server
Access über Internet = grottenschlecht
SQL über Internet kann auch grottenschlecht sein, hängt vom Programmkonzept unddessen umsetzung (Programmierung) ab.
Gruß,
Peter