CS - interne Datenbank
Hallo Leute,
es geht hier um die Programmiersprache C#, da ich keinen Bereich dafür gefunden habe, wo ich das sonst posten könnte. Da ich grade diese Sprache neu erlerne, würde mich interessieren, wie man die Daten für ein Tool am effektivsten abspeichert, die für so ein Tool nötig sind.
Als Beispiel: PHP hat eine MySQL- DB, wo die Daten für eventuelle Berechnungen vorliegen. Diese werden dann z. B. per I-Net geholt, verarbeitet und wieder abgespeichert. Ich möchte allerdings ein Tool bauen, das ausschliesslich (oder zumindest fast) nur offline genutzt werden kann. Allerdings sollen viele Daten für eine Berechnung dabei genutzt werden, die natürlich dann mit diesem Tool irgendwie mitgespeichert werden müssen bzw. mitinstalliert werden müssen.
Eine *.txt Datei dafür zu nutzen, scheint für mich nicht das richtige. Drin würde z. B. dann so was stehen: Peter,123587,53506l.53,2342349,Musterstadt
Silke,569646,234292.21,4325345,Musterstadt2
usw.
Da die Daten aber im Prinzip sehr zahlreich sind, wäre meine Frage, ob eine interne Datenbank für solche Zwecke in C# existiert, wo man diese Daten speichert und die vorallem mit dem Tool nach der Veröffentlichung mit installiert werden.
Danke für die Hilfe im Voraus.
es geht hier um die Programmiersprache C#, da ich keinen Bereich dafür gefunden habe, wo ich das sonst posten könnte. Da ich grade diese Sprache neu erlerne, würde mich interessieren, wie man die Daten für ein Tool am effektivsten abspeichert, die für so ein Tool nötig sind.
Als Beispiel: PHP hat eine MySQL- DB, wo die Daten für eventuelle Berechnungen vorliegen. Diese werden dann z. B. per I-Net geholt, verarbeitet und wieder abgespeichert. Ich möchte allerdings ein Tool bauen, das ausschliesslich (oder zumindest fast) nur offline genutzt werden kann. Allerdings sollen viele Daten für eine Berechnung dabei genutzt werden, die natürlich dann mit diesem Tool irgendwie mitgespeichert werden müssen bzw. mitinstalliert werden müssen.
Eine *.txt Datei dafür zu nutzen, scheint für mich nicht das richtige. Drin würde z. B. dann so was stehen: Peter,123587,53506l.53,2342349,Musterstadt
Silke,569646,234292.21,4325345,Musterstadt2
usw.
Da die Daten aber im Prinzip sehr zahlreich sind, wäre meine Frage, ob eine interne Datenbank für solche Zwecke in C# existiert, wo man diese Daten speichert und die vorallem mit dem Tool nach der Veröffentlichung mit installiert werden.
Danke für die Hilfe im Voraus.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 97928
Url: https://administrator.de/contentid/97928
Ausgedruckt am: 16.11.2024 um 11:11 Uhr
7 Kommentare
Neuester Kommentar
Wie wärs ebenfalls mit MySQL, oder MSSQL, oder Oracle, oder DB2, oder Access, oder Foxpro, oder Firebird, oder, oder, oder...
Lonesome Walker
Lonesome Walker
Moin dtz...usw,
ob der Aufwand gerechtfertigt ist eine (Freeware-) Datenbank auf einem Kundenrechner mit zu installieren hängt sicherlich davon ob, ob es sinnvoll ist
Und das hängt von Rahmenparametern ab wie Datenvolumen, Komplexität, Portierbarkeit/Austausbarkeit der Daten, Einzel/Mehrfachzugriffen, Konsistenzanforderungen, Verfügbarkeit etc.
Ich habe mich bemüht, diese unvollständige Aufzählung für Dich in die "richtige" Reihenfolge zu bringen.
Datenvolumen und Komplexität der Datenstrukturen wären die wichtigsten Fragezeichen.
Wenn Du dazu mal zwei Sätze ausformulieren könntest...
Grüße
Biber
ob der Aufwand gerechtfertigt ist eine (Freeware-) Datenbank auf einem Kundenrechner mit zu installieren hängt sicherlich davon ob, ob es sinnvoll ist
- ein Datenbanksystem einzusetzen, also mehrere normalisierte Tabellen, deren Inhalte in gegenseitigen Abhängigkeiten stehen
- oder sich der Sachverhalt eher auf ein, zwei flache Tabellen bezieht mit vielleicht noch ein paar *.ini-Parametern
- oder ob es sinnvoller ist, sich ein eigenes Datenformat auszudenken, weil Du meinetwegen selbst verwaltete verpointerte Baumstrukturen verwalten musst
- oder ob sich ein allgemein lesbares Dateiformat verwenden lässt (z.B. Excels *.xls-Format.)
Und das hängt von Rahmenparametern ab wie Datenvolumen, Komplexität, Portierbarkeit/Austausbarkeit der Daten, Einzel/Mehrfachzugriffen, Konsistenzanforderungen, Verfügbarkeit etc.
Ich habe mich bemüht, diese unvollständige Aufzählung für Dich in die "richtige" Reihenfolge zu bringen.
Datenvolumen und Komplexität der Datenstrukturen wären die wichtigsten Fragezeichen.
Wenn Du dazu mal zwei Sätze ausformulieren könntest...
Grüße
Biber
Moin dtz..usw,
lass uns da schrittweise weitertasten...
Wenn Du von Komplexität und anzunehmendem Datenvolumen her gesehen keine Datenbank im Hintergrund brauchst, wäre die nächste Frage - genau wie Du auch formuliert hast - "will ich denn, dass sich die Daten auch ohne (mein) Programm lesen lassen oder sind die absolut geheim und schützenswert?"
Und da gehen sicherlich die Meinungen auseinander.
Von meiner Warte aus (so wie ich die Lebenszyklen bzw. befristete Verfügbarkeit von Programmversionen erlebt habe) plädiere ich IMMER für eine strikte Trennung von Programm und Daten.
Programm und Programmcode/-algorithmen sind schützenswert und sollten nicht klar lesbar und kopierbar sein, okay.
Daten dagegen (außer wenn sie fachlich/inhaltlich schützenswert sind) sollten unverschlüsselt/auch ohne ein Programm interpretierbar sein.
Wenn z.B. Dein Benutzer die Beispieldaten, die Du oben skizzert hast auch mal in einem Präsentationsprogrämmchen als Tortengrafik darstellen will, dann wäre es natürlich sinnvoll, wenn diese Daten in allgemein verbreiteten Dateiformaten zugänglich wären.
Langer Rede kurzer Sinn: Falls die Daten nicht gerade aus Adressdaten von F.D.P.-Mitgliedern und deren Liechtensteiner Kontonummern bestehen, dann wäre ein einfaches zeilenweises Testformat (z.b. *.CSV).
Wenn Du die Daten "unleserlich" für andere Programme haben willst, dann denke Dir ein eigenes .dtzzzz-Format aus, also eine Struktur, die nur Dein Programm kennt.
Grüße
Biber
lass uns da schrittweise weitertasten...
Wenn Du von Komplexität und anzunehmendem Datenvolumen her gesehen keine Datenbank im Hintergrund brauchst, wäre die nächste Frage - genau wie Du auch formuliert hast - "will ich denn, dass sich die Daten auch ohne (mein) Programm lesen lassen oder sind die absolut geheim und schützenswert?"
Und da gehen sicherlich die Meinungen auseinander.
Von meiner Warte aus (so wie ich die Lebenszyklen bzw. befristete Verfügbarkeit von Programmversionen erlebt habe) plädiere ich IMMER für eine strikte Trennung von Programm und Daten.
Programm und Programmcode/-algorithmen sind schützenswert und sollten nicht klar lesbar und kopierbar sein, okay.
Daten dagegen (außer wenn sie fachlich/inhaltlich schützenswert sind) sollten unverschlüsselt/auch ohne ein Programm interpretierbar sein.
Wenn z.B. Dein Benutzer die Beispieldaten, die Du oben skizzert hast auch mal in einem Präsentationsprogrämmchen als Tortengrafik darstellen will, dann wäre es natürlich sinnvoll, wenn diese Daten in allgemein verbreiteten Dateiformaten zugänglich wären.
Langer Rede kurzer Sinn: Falls die Daten nicht gerade aus Adressdaten von F.D.P.-Mitgliedern und deren Liechtensteiner Kontonummern bestehen, dann wäre ein einfaches zeilenweises Testformat (z.b. *.CSV).
Wenn Du die Daten "unleserlich" für andere Programme haben willst, dann denke Dir ein eigenes .dtzzzz-Format aus, also eine Struktur, die nur Dein Programm kennt.
Grüße
Biber