Verschiedene Datenbanken - Was sollte ich lernen?

Kenta1561

Bekanntes Mitglied
Hallo,

ich interessiere mich derzeit neben Java auch ein wenig für Datenbanken und plane in der Zukunft so etwas zu lernen.
Ich habe schon bei den Tags hier im Forum "Datenbankprogrammierung" gesehen, dass es verschiedene "Datenbanken" (kann man das so sagen?) gibt und ich kenne mich da natürlich nicht gut aus, mein Wissensstand ist einfach nur, dass ich mal was von SQL, MySQL und solchen Wörtern was gehört habe.
Nun ist meine Frage, welchen "Datenbanktyp"? ich lernen sollte, wenn man folgende Aspekte betrachtet:
- Zukunft des "Datenbanktyps"
- Vorteile
- Nachteile
- Popularität
- Anwendung in Jobs

Oder kann man diese Frage nur sehr schwer beantworten? Ich würde gerne mal wissen, was ihr dazu sagt und ganz wichtig, bitte keine Fachwörter, ich kenne mich da fast gar nicht aus :D
Danke :D

LG
Kenta1561
 

kiwara

Aktives Mitglied
Es gibt verschiedene Arten von Datenbankmanagementsystemen(umgangssprachlich Datenbanken). Häufig werden relationale Datenbanken verwenden, wie MySQL, Oracle, die Microsoft Variante, etc.

Wenn du erstmal beginnst SQL zu lernen, und mit MySQL ist das erstmal ein guter Anfang, verstehst du relationale Datenbanken ganz schnell.

Wenn man erstmal fest darin ist, kann man sich dann mit NoSQL-Datenbanken beschäftigen, wobei es auch dort mehrere Arten gibt.

Wenn es darum geht, Daten zu speichern, wird am häufigsten auf Datenbanken zurückgegriffen, was bedeutet, dass es (aus meiner Sicht) ein MUSS ist, zumindest SQL zu können.
 

Thallius

Top Contributor
Ich kann Dir nur empfehlen Dich richtig einzulesen. Sonst wirst du da niemals richtig machen. Gerade am Anfang ist es wichtig, dass man erstmal die Normalisierung kapiert hat und seine Tabellen enstsprechend designed. Hier gibt es im Internet leider viel zu viel Mist.

Ich kann Dir dazu das mySQL Handbuch von Kröll empfehlen. Hier wird sehr gut erklärt wie man eine Datenbank aufsetzt, wie man die Tabellen richtig erstellt und wie man die Datenbank dann eben auch managed. Ist halt aber ziemlich trockener Stoff.

Gruß

Claus
 

thet1983

Top Contributor
Wie @Thallius schon gesagt hat und ich hab's auch so gemacht beginne mit MySQL.
Lese dich gut in die Normalisierung ein das ist sehr wichtig , ich selbst wollte es nicht wahr haben..nur wenn du größere Projekte schreibst dann wird dir das nicht erspart bleiben...
 

Tobse

Top Contributor
Oder ist das eine dumme Frage weil vielleicht SQL und MySQL das Gleiche ist? :confused:
Es gibt nur dumme Antworten :) wie diese hier: google das doch :O
Ich geb dir trotzdem die Antwort: SQL ist eine standardisierte Sprache für relationale Datenbanken (RDMBS). Datenbanken müssen mit ihrem jeweiligen "Dialekt" von SQL programmiert werden. MySQL, MariaDB und Amazon Aurora werden mit dem selben Dialekt programmiert. OracleDB, PostreSQL, H2DB, SQLite u.s.w. haben alle ihre eigenen Dialekte mit mehr oder weniger Features als SQL spezifiziert...
 

Kenta1561

Bekanntes Mitglied
@Tobse
Also wenn ich das jetzt richtig verstanden habe: Mit SQL kann man MySQL programmieren?
Und was heißt relational?
Noch eine zusätzliche Frage: Ist Microsoft SQL das Gleiche wie SQL oder auch ein "Dialekt"?

LG
Kenta1561
 
Zuletzt bearbeitet:

Tobse

Top Contributor
Mit SQL kann man MySQL programmieren?
Nein. MySQL Datenbanken muss man mit dem MySQL Dialekt programmieren. MySQL hat alle wichtigen Features und ist sehr nahe am puren SQL-Standard dran, weshalb er sich gut zum Lernen eignet.


Und was heißt relational?
Relational ist eine Art Datenbanksystem, wie @kiware schon sagte. Es gibt relationale- , graphen- und Dokument-Datenbanken (uvm). Einfach mal googlen ;)
 

VfL_Freak

Top Contributor
Moin,

ja, das mag etwas verwirrend sein ... vielleicht wird es so klarer:

MySQL ist ein sog. Datenbankmanagementsystem, quasi die Datenbank selbst (https://de.wikipedia.org/wiki/MySQL). Es gibt aber, wie oben schoin erwähnt wurde, auch zig andere Produkte (Oracle, ...)

SQL ist eine Sprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen (https://de.wikipedia.org/wiki/SQL)

Gruß Klaus
 

stg

Top Contributor
Und was heißt relational?

Das "relational" leitet sich von Relation ab.
Eine Datenbank ist mehr als ein bloßer Speicher von Daten. Vielmehr entscheidend ist, dass du auf gesuchte Informationen "leicht" zugreifen kannst und die Daten konsistent sind. Hierfür gibt es, wie bereits gesagt wurde, einige grundverschiedene Ansätze.
Bei relationalen Datenbank kannst du Daten über Relationen mit einander in Verbindung bringen. Du hast zum Beispiel eine Liste (Tabelle) mit Personen und eine Liste mit Wohnorten. Willst du nun etwa den Wohnort einer bestimmten Person auslesen, so musst du (nur) aus allen denkbaren Paaren von (Person, Wohnort) das richtige Wertepaar finden. Das ist im Grunde das, was eine relationale Datenbank ausmacht.

Vorbereitend für den Einstieg ist es nicht verkehrt sich zunächst mir relationaler Algebra zu befassen - jedenfalls die Grundlagen. Dann versteht man auch, was man da in SQL für wirres Zeug schreibt.

Ob du für den Einstieg MySQL, PostGreSQL, Oracle DB oder sonst was nimmst, ist eigentlich nahezu egal.

Relational ist eine Art Datenbanksystem, wie @kiware schon sagte. Es gibt relationale- , graphen- und Dokument-Datenbanken (uvm).
Ergänzend hierzu:
Das eine schließt das andere übrigens nicht aus. Es gibt auch viele "Mischformen".
 

Meniskusschaden

Top Contributor
Ich finde, gerade beim Thema SQL gibt es zumindest bei den Grundlagen eine erstaunlich große Übereinstimmung zwischen dem, was richtig ist und dem, was einem der gesunde Menschenverstand sagt. Deshalb würde ich nur kurz nachlesen, was eine relationale Datenbank und was Normalisierung ist. Damit weiß man bereits das Wesentliche. Dann würde ich mir ein Datenbanksystem installieren (da finde ich z.B. MySQL gut, weil es eine komfortable Workbench gibt) und in die Praxis einsteigen, indem ich eine kleine Datenbank aufbaue. Dann hat man eine Übungsumgebung, um zunächst ein wenig mit SQL-Befehlen herum zu spielen. Danach kann man sich einerseits etwas mit theoretischen Grundlagen beschäftigen und andererseits die vorhandenen Java-Kenntnisse nutzen, um auf die DB zuzugreifen. Für beides hat man dann von Beginn an ein Übungssystem zur Verfügung, so dass man alles ausprobieren kann.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Unterstützung für verschiedene Datenbanken Datenbankprogrammierung 2
J In viele verschiedene Datenbanken einfügen Datenbankprogrammierung 3
Thallius MySQL Warum gibt result verschiedene Datumsformate? Datenbankprogrammierung 1
S Hibernate: Verschiedene Klassen zurückgeben. Datenbankprogrammierung 2
D umschalten zwischen verschiedene Tabellen Datenbankprogrammierung 1
M DES und ASC auf verschiedene Spalten anwenden Datenbankprogrammierung 2
F Hibernate - verschiedene Schemen Datenbankprogrammierung 7
S Verschiedene Informationen gleichen Typs speichern und auslesen Datenbankprogrammierung 4
fastjack Kombinierte Suche und verschiedene Datumsformate Datenbankprogrammierung 2
J SQL Abfrage: Verschiedene Werte in einer Spalte mit einem Update Befehl? Datenbankprogrammierung 7
S verschiedene Teile einer Datenbanktabelle Datenbankprogrammierung 3
V 3x selbes Ergebnis trotz 3x verschiedene Ergebnisse? Datenbankprogrammierung 2
O apache derby in eclipse für Datenbanken einbauen Datenbankprogrammierung 3
R Datenbanken erstellen Datenbankprogrammierung 3
I Hilfe zu Multidimensionalen Datenbanken Datenbankprogrammierung 1
D Java Datenbanken Datenbankprogrammierung 1
T Lagerprogramm mit Datenbanken Datenbankprogrammierung 21
M SQLite Zwei Datenbanken synchronisieren Datenbankprogrammierung 8
M Feedback für neues Buch über "Java und Datenbanken" erwünscht Datenbankprogrammierung 8
F MySQL+ Netbeans: Datenbanken mit Automatisch generierten Entity Classes get und set Datenbankprogrammierung 2
M Hash in Bezug auf Datenbanken unklar Datenbankprogrammierung 3
M Datenbankschema in relationalen Datenbanken Datenbankprogrammierung 3
Ananaskirsche Verschlüsselung von Datenbanken Datenbankprogrammierung 1
T Datenbanken-PDF Datenbankprogrammierung 15
Y Derby/JavaDB Benutzung von eingebetteten Datenbanken Datenbankprogrammierung 4
G Datenbanken in Java Datenbankprogrammierung 9
K Zwei Datenbanken miteinander auf Unterschiede vergleichen Datenbankprogrammierung 2
T 2 Tabellen aus 2 Datenbanken miteinander vergleichen Datenbankprogrammierung 6
B Datenbanken schützen vor Zugriff Datenbankprogrammierung 3
M Beziehungsfrage Datenbanken Datenbankprogrammierung 5
L Große Datenbanken - Designproblem Datenbankprogrammierung 3
E Zwischen Datenbanken wechseln Datenbankprogrammierung 13
L Synchronisieren von 2 Datenbanken Datenbankprogrammierung 2
T a x b x c x....n Matrizen in Datenbanken Datenbankprogrammierung 5
P DatenBanken mit Netbeans erstellen Datenbankprogrammierung 17
K Grundfragen zu Datenbanken Datenbankprogrammierung 28
H Rechnen in Datenbanken - JDBC Mittel der Wahl? Datenbankprogrammierung 32
T MySQL Auflistung aller Datenbanken??? Datenbankprogrammierung 9
C MySQL Hibernate mit 2 Datenbanken Datenbankprogrammierung 12
V Hibernate mit 2 Datenbanken Datenbankprogrammierung 3
W MySQL Datenbanken auslesen Datenbankprogrammierung 3
M prinzipielle Frage zu Datenbanken und jars ... Datenbankprogrammierung 2
R PreparedStatement mit verschiedenen Datenbanken Datenbankprogrammierung 2
brainray Bei MySQL alle Datenbanken eines Servers abfragen Datenbankprogrammierung 3
R 1 Programm, 2 Datenbanken Datenbankprogrammierung 15
S Standard für Datenbanken Datenbankprogrammierung 3
R Datenbanken, Tabellen normalisieren. Datenbankprogrammierung 1
G Datenbanken abgleichen Datenbankprogrammierung 4
P Insert into mit zwei Datenbanken Datenbankprogrammierung 3
G Effektive Methode zum durchsuchen von SQL-Datenbanken Datenbankprogrammierung 7
M Datenbanken synchronisieren Datenbankprogrammierung 2
P Datenbanken auswahl, anforderungen Datenbankprogrammierung 29
K Daten in Datenbanken einfügen Datenbankprogrammierung 6
G H2: Erstellen von Datenbanken verhindern Datenbankprogrammierung 2
Y Datenbanken Datenbankprogrammierung 6
M Maximale Kapazität von Datenbanken Datenbankprogrammierung 2
S Objektorientierte Datenbanken Datenbankprogrammierung 4
F Zwischen Datenbanken wählen auf SQL-Server Datenbankprogrammierung 4
G Umlaut-Problem mit Firebird Datenbanken Datenbankprogrammierung 8
I Datenbanken mit MySQL einrichten Datenbankprogrammierung 11
G Step-by-Step Anleitung für Datenbanken Datenbankprogrammierung 3
N Abfrage über zwei Datenbanken Datenbankprogrammierung 9
M Treiber für mysql Datenbanken Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben