Der Microsoft-Datenbankdschungel in C# / .Net

Jack159

Lieutenant
Registriert
Dez. 2011
Beiträge
766
Ich habe bisher nur in Java programmiert und arbeite mich seit einiger Zeit in C# ein. Was ich dort noch nicht so ganz verstehe ist die große Anzahl an Möglichkeiten, eine Datenbank anzulegen / zu verwenden.

Wenn ich in Java eine Datenbank brauchte, dann nahm ich mir XAMPP, richtete die MySql Datenbank über PHPMyAdmin ein, importierte eine mysql.jar Datei in das Java-Projekt und konnte dann im Java-Code losegen auf die Datenbank zuzugreifen.
Diese Variante habe ich nun auch in C# hinbekommen.

Was ich aber noch nicht überblicke, sind die Microsoft-Datenbanken.

In Visual Studio gibt es z.B. eine "Dienstbasierte Datenbank" und ein "DataSet". Was ist was und wo ist der Unterschied?

Dann sehe ich in sämtlichen Datenbank-Tutorials zu C#, dass dort eine integrierte Datenbank verwendet wird.

Und dann gibt es ja noch "Microsoft SQL Server". Ist dies das Gegenstück von Microsoft zu MySQL?
 
In Java hast auch 1000 Möglichkeiten eine DB anzubinden, es gibt ja schließlich nicht nur MySQL. Da wären auch noch diverse NoSQL Datenbanken, wie MongoDB, oder Graphdatenbanken wie Neo4j. Und genau so gibt's in Java auch Embedded DBs wie H2 (und auch Neo4j kann embedded betrieben werden).

Und ja MSSQL ist das quasi-Gegenstück zu MySQL. Das heißt aber nur, dass beide Datenbanken (wie auch MariaDB und Postgres) dieselbe Sprache zur Abfrage verwenden: SQL. Die Befehlssätze sind aber natürlich leicht unterschiedlich.

Wenn du objektorientiert auf eine DB zugreifst ist die verwendete DB mehr oder weniger egal, da alles ähnlich bedient wird: Objekt anlegen, Objekt speichern, Objekt anhand bestimmter Parameter abrufen.

Also die Wahl der DB hängt primär vom Anwendungsfall ab (oder im schlimmsten Fall von dem, was der Kunde will ;) )
 
Zurück
Oben