Was ist das: SQL-Server

Grüezi Hilfeanbietende

Habe eine kleine Applikation in Access, aber die Menge an Daten (back-/Front-End getrennt) gibt mir zu denken: ich sollte auf einen SQL-Server umsteigen, sagt man mir. So weit so gut, nur: wie mache ich dass? Bin total unwissend und weiss nicht einmal: ist das ein anderer Computer den ich brauche oder ist das einfach nur eine andere Software? Was muss der Computer können bzw. welche Grösse, welches Betriebssystem - Windows 2010/2011, etc?

Ich wäre sehr dankbar, wenn jemand mir eine Einleitung zur Einrichtung „für Dumme“ liefern könnte. Für die Übernahme der Daten ins neue System habe ich ein dickes Buch „Access und SQL Server“, aber der Autor geht davon aus, dass ich schon das ganze eingerichtet hab…

Danke für jede Hilfe.
Walter

Hallo!

Access ist Frontend und Backend in einem. Du hast im einfachsten Fall eine einzelne Datei, in der sowohl deine Formulare etc., also alles, was der Benutzer sieht, als auch die Tabellen mit ihren Daten gespeichert werden. Das heißt auch, dass das alles nur auf einem Rechner existiert, nicht von einem anderen Rechner aus genutzt werden kann, und auch nicht von zwei Personen gleichzeitig.

Ein SQL-Server ist ein Programm, das auf einem beliebigen Rechner läuft, und das sich ausschließlich um die Tabellen und die Daten darin kümmert. Naja, ein bissel mehr ist es schon, aber die Anzeige der Daten gehört nicht zu den Aufgaben. Du kannst dann Access als Frontend mit deinen Formularen nutzen, das dann auf die Daten des Servers zugreift.

Da der Server permanent läuft und auch aus dem Netzwerk erreichbar sein kann, können viele Personen gleichzeitig mit den Daten arbeiten.

Des Weiteren ist der Server darauf optimiert, auch mit wirklich großen Datenbanken umzugehen ( die kostenlose Express-Version von MS ist auf „nur“ 10GB beschränkt), und sämtliche Operation schnell, effizient und sicher auszuführen.

Allerdings ist ein SQL-Server nochmal eine völlig andere, komplexe Welt, daher ist es fast schon unmöglich, dir das jetzt auf die Schnelle beizubringen. Ich mein stell dir vor, du sollst jemandem, der das noch nie gemacht hat, mal eben beibringen, wie man in Access ein Projekt mit Tabellen und Formularen entwickelt.

Vielleicht hat ja wer ein paar Links zu guten Tutorials, denn die wären echt hilfreich. @Christa ?

1 Like

Danke für deine Antwort, Christa.
Also, wenn ich das richtig verstehe, muss ich kein nur für den SQL-Server reservierten Rechner erwerben. Nur den Access backend in die SQL-Server-Umgebung (die ich auf diesem Compi installiert habe - hineinexportieren und die Verknüpfungen der Frontend-DB auf diese neuen Tabellen loslassen.
Doch dann verstehe ich den Vorteil vom SQL-Server nicht: der Platz für die Daten ist ja immer noch der gleiche…

Hallo,

schau dir mal diesen Artikel an, der listet ganz konkret die Vorteile (Access gegen SQL) auf:

Gruß,
Steve

Sie hat Dir das nicht geschrieben, geschrieben hat Dir sweber und die oder der hofft, dass Christa sich zu Deiner Frage auch noch äußert.
ramses90

Vergleiche:

Backend = Server (kann aber auch ein Dämon [ServerProgramm] auf deinem eigenen Rechner sein…)
Frontend = Client = dein lokaler Computer

Access = wie zB ein WordDoc local auf deinem Computer bearbeiten
SQL (mit Back/Frontnd) = wie eine doodle Umfrage erstellen (wo alle drauf gleichzeitig zugreifen können), sie mglw. füttern mit eigenen Daten oder die Daten der anderen ansehen / abrufen (nur ein bissel komplizierter halt, wie hier schon gut beschrieben)…

Gleich noch ein bisschen Datenbankkunde:
Neben der Beherrschung der Sprache der Datenbank (…QueryLanguage) solltest du reichlich Gedanken darauf verwenden, wie du die Daten effektiv und sparsam in den Tabellen organisierst: zB bei Kontakten Die Personen von den Städten zu trennen, damit du nicht 100e Leute mit Wohnort Berlin in 1 Tabelle hast, sondern zB über die PLZ auf eine weitere Tabelle referenzierst mit Wohnorten. Dann spart deine Datenbank hunderte Mal den Eintrag Berlin im Wohnort. Ich hatte seinerzeit dann auch die Tel-Vorwahl daran gehängt …
Wenn man wollte, könnte man dann die Straßen und Hausnummern auch in eine eigene Tabelle sammeln. Bei Hochhäusern bietet das den Vorteil, dass deine Personen einen Index in der Tabelle haben, der dann IN die Straßentabelle zeigt. Das hab ich aber bei mir nicht so gemacht, kann auch zu Schwierigkeiten führen, weil du dann dir überlegen musst, was deine Datenbank machen soll, wenn sowohl in Berlin als auch in anderen Städten die Hauptstr. existiert aber keine Obergasse und du prüfen willst, ob die Eingabe richtig ist… sprich: Darf die Hauptstraße in Berlin mit 196 Hausnummern, der gleiche Datenbank-Eintrag sein, wie die Hauptstraße in Rothenburg mit nur 27 Nummern… usw. usf.

Sorry, aber für jemanden, der

und überhaupt keine Ahnung hat

und von

schreibt, sehe ich mich nicht in der Lage,

zu liefern. Microsoft selbst hat einen Installationsleitfaden veröffentlicht, aber so wie der UP sich beschreibt, habe ich große und berechtigte Zweifel, dass ihm das weiterhilft.

Und wie ist das bei Reihenhaussiedlungen?

Das sollte man sich nicht nur dann überlegen - übrigens auch bei einer Access-DB.
Aber mal im Ernst: inwiefern soll deine etwas konfuse Antwort dem Fragesteller weiterhelfen, der erstmal was über den Unterschied von Access und SQL Server wissen will?

1 Like

Was für ein Echo! Danke an euch allen.
Ich weiss jetzt, dass „SQL-Server“ eine Software ist. Aber die entscheidenden erste Frage ist doch zunächst ein mal: muss ich einen neuen Rechner kaufen, um da drauf den SQL-Server zu installieren?

Das wissen wir nicht, weil du nicht verraten hast, was für einen Rechner du hast. Wenn dein vorhandener Rechner die Voraussetzungen erfüllt, brauchst du keinen neuen Rechner, wenn nicht, dann doch.

Nein, man kann SQL-Server je nach Hersteller und Variante sowie verwendetem Betriebssystem durchaus auch im Hintergrund auf dem Desktop PC mitlaufen lassen. Das bringt aber in deinem Fall für den laufenden Betrieb vermutlich keinen großen Mehrwert. Das macht man eher als Entwickler einer Lösung, die dann im Betrieb einen dedizierten SQL-Server verwenden soll.

Über welche Menge reden wir hier?
(Bevor wir hier überhaupt von Datenbanken zu reden anfangen - Access hält schon sehr viel aus und macht sich dann schön langsam bemerkbar - Performance -, wenn es eng wird)

Der Nachteil bei „auf dem eigenen Rechner“ ist halt, dass du ihn auch dauerhaft dann anlassen musst, damit er (als Server) erreichbar bleibt…
Nur dann (MultiUser-Betrieb) bringt die Trennung von Backend/Frontend Sinn.

Wenn ich den Fragesteller richtig verstanden habe, geht es um eine Einplatz-/Single-User-Anwendung und man hat ihm geraten, diese auf einen Datenbankserver umzustellen. Das kann sinnvoll sein. Ob das hier tatsächlich der Fall ist, wissen wir nicht, aber ich gehe erst mal davon aus.

Es bleibt dann nach wie vor eine Einplatz-/Single-User-Anwendung. Somit gibt es keinen Grund den Server rund um die Uhr laufen zu lassen. Es genügt, wenn der SQL-Server beim Hochfahren des Rechners gestartet und beim Herunterfahren gestoppt wird.

1 Like

Hallo allen Beratern.
Habe beschlossen mich auf normalen Access zu konzentrieren und die Idee vom SQL-Server fallen gelassen.
Muss mich für das lange Schweigen entschuldigen, aber ich konnte nicht.
Wünsche euch allen gute Gesundheit,
Walter

Macht Sinn, denn die Erklärungen klingen kompliziert. Aber dein Ursprungsproblem mit der Datenmenge ist nicht erledigt.

Ich arbeite seit 2001 mit dem kostenlosen Datenbanksystem MySQL auf derselben Hardware im Web, auf dem auch die HTML Seiten liegen un d die PHP Programme laufen.

Die MySQL Serverprogramme für Windows, Linux oder Apple können von einer lokalen Platte gestartet werden, sogar von einem USB-Stick. Das könnte dir ein Wissender einrichten.

In einer beliebigen Programmiersprache (bei Access vermutlich Basic, bei mir PHP) können dann SQL-Kommandos geschickt werden, die Server-Software antwortet bei SELECT mit der Treffermenge, bei INSERT fügt sie Datensätze ein, bei UPDATE ändert sie Datensätze.

Ich habe das im fortgeschrittenen Alter von 50+ Jahren gelernt und mit solchem Wissen 20 Jahre lang mein Geld verdient. Falls du kurz vor der Rente stehst, macht es vermutlich keinen Sinn.

Access ist die Verschmelzung von grafischer Oberfläche und Datenbank. Im Grunde klickt man sich in Access SQL-Anweisungen zusammen, oder schreibt sie sich eben selbst.
Der Unterschied ist einfach, ob die Datenbank innerhalb der Access-Datei ist, oder auf nem Server. Und dann noch so ein paar Unterschiede im SQL-Dialekt.

Wenn Access mit ner externen Datenbank verwendet werden soll, würde ich zu MS SQL Server greifen. Ist beides von MS, und wird daher besser zusammen arbeiten. Der Server ist auch kostenlos, wenn man keine Profi-Funktionen will.

Der Vorteil bei Access ist, dass es einen Migrations-Assistenten gibt, mit dem man eine zunächst in einer einheitlichen Datei erstellte Anwendung inkl. Datenbank im Nachhinein aufteilen und die Datenbank dann auf einen SQL-Server migrieren kann. D.h. Du hältst Dir bei Access diese Möglichkeit immer offen. Wenn man von vorne herein in diese Richtung denkt, kann man auch gleich in Access so arbeiten, dass man Front- und Backend auf zwei Dateien verteilt, Dann lässt sich das Backend hinterher einfacher auf eine andere Technologie umstellen.