Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

Daten lokal speichern

Diskussion: Daten lokal speichern im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hallo Leute, ich stelle mir schon seit längerem die Frage, mit welchen Techniken man in verschiedenen Sprachen (mich interessieren ...

Like Tree7Likes
  • 4 Post By GrafZahl
  • 1 Post By GrafZahl
  • 2 Post By CDW

Antwort
Alt 21.08.11, 00:02   #1 (permalink)
 
Registriert seit: 30.05.07
Woosh Leistung: Facit NTK
Likes: 0
Question Daten lokal speichern

Anzeige

Hallo Leute,

ich stelle mir schon seit längerem die Frage, mit welchen Techniken man in verschiedenen Sprachen (mich interessieren vor allem Java, C/C++ und .NET) am Besten Daten lokal speichert. Genau das machen ja sehr viele Programme. Wie macht man sowas z. B. in einem Programm zur Führung eines Fahrtenbuchs? Gibt es Mechanismen, lokal möglichst einfach eine Datenbank (ohne Server, wäre ja sinnlos, wenn man nur lokal darauf zugreift) anzulegen?

Wenn euch die Frage zu unpräzise ist, freue ich mich natürlich auch über Links/Literatur. Habe zwar bereits gesucht, aber anscheinend fehlen mir die richtigen Stichwörter.

Viele Grüße
Woosh

Woosh ist offline   Mit Zitat antworten
Alt 21.08.11, 00:33   #2 (permalink)
 
Benutzerbild von fabuloes
 
Registriert seit: 26.01.11
fabuloes Leistung: Z3
Likes: 9
Standard

Also wenn du die Daten wirklich wie in einer Datenbank verwalten willst wirst du wohl nicht um ein lokales DBMS herumkommen, also z.B. einen MySQL-Server im Loopbackinterface. Eine andere Möglichkeit wäre die Speicherung in XML-Datein, auf die du dann mit entsprechenden XML-Libs zugreifen kannst (mit fällt gerade irrXML ein weil ich gerdae mit Irrlicht arbeite).

EDIT: http://www.ambiera.com/irrxml/
__________________
http://sourceforge.net/projects/my-connect/

Geändert von fabuloes (21.08.11 um 00:39 Uhr)
fabuloes ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 21.08.11, 02:18   #3 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

ich werf einfach mal als stichwort SQLlite in den raum ...
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 21.08.11, 13:47   #4 (permalink)
Moderator
 
Benutzerbild von Tarantoga
 
Registriert seit: 11.02.06
Tarantoga QuadcoreTarantoga QuadcoreTarantoga QuadcoreTarantoga QuadcoreTarantoga QuadcoreTarantoga Quadcore
Likes: 229
Standard

Wenn es wirklich nur um die Führung (d)eines Fahrtenbuchs geht, denke ich die von fabuloes vorgschlagene Lösung mit der XML-Datei reicht völlig aus. Mit XML lassen sich Daten schön strukturieren und recht komfortabel bearbeiten. Nur bei großen Datenmengen und komplexen Operationen auf den Datenmengen würde ich dann doch zu einer Datenbanklösung raten - wenn es also um die Fahrtenbücher eines ganzen Betriebs geht, ist eine Datenbank angesagt...
Tarantoga ist offline   Mit Zitat antworten
Alt 21.08.11, 14:47   #5 (permalink)
Themenstarter
 
Registriert seit: 30.05.07
Woosh Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Zitat von Tarantoga Beitrag anzeigen
Wenn es wirklich nur um die Führung (d)eines Fahrtenbuchs geht, denke ich die von fabuloes vorgschlagene Lösung mit der XML-Datei reicht völlig aus. Mit XML lassen sich Daten schön strukturieren und recht komfortabel bearbeiten. Nur bei großen Datenmengen und komplexen Operationen auf den Datenmengen würde ich dann doch zu einer Datenbanklösung raten - wenn es also um die Fahrtenbücher eines ganzen Betriebs geht, ist eine Datenbank angesagt...
Nein, das Fahrtenbuch war nur ein spontanes Beispiel. Genau gesagt handelt es sich um einen Kunden- und Produktstamm. Die einzelnen Produkte sind außerdem aus verschiedenen Bestandteilen zusammengesetzt. Das Ganze soll so flexibel gehalten werden, dass auch Bestandteile von Produkten aus Bestandteilen bestehen. Bei dem Kundenstamm handelt es sich um einige Tausend Datensätze. Der Porduktstamm wird vermutlich größer.

[EDIT] Aus Sicht der Datenverwaltung ist es wohl am klügsten, die Daten in Relationen zu verknüpfen.
Woosh ist offline   Mit Zitat antworten
Alt 21.08.11, 18:34   #6 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

in dem fall würde ich bereits zur ausgewachsenen mysql-db raten
end4win likes this.
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 21.08.11, 18:39   #7 (permalink)
Themenstarter
 
Registriert seit: 30.05.07
Woosh Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Zitat von GrafZahl Beitrag anzeigen
in dem fall würde ich bereits zur ausgewachsenen mysql-db raten
OK. Ich stelle mir nur immer die Frage, warum dazu einen ganzen Server aufsetzen, wenn die DB sowieso nur lokal auf einem Rechner benutzt wird? Da würde es ja eigentlich reichen, ohne eine Client-Server-Kommunikation mit der Datenbank zu jonglieren, oder? Ist schließlich auch ein größeres Sicherheitsrisiko (<-- Achtung, gefährliches Halbwissen).
Woosh ist offline   Mit Zitat antworten
Alt 21.08.11, 18:46   #8 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

niemand würde dich daran hindern, deine MySQL instanz ohne tcp-port zu konfigurieren und sie nur lokal über eine named pipe, etc anzusprechen ... nur sobald so eine db dann mal via netzwerk verfügbar gemacht werden muss, da weitere user darauf zugreifen sollen, ist das dann viel einfacher zu realisieren...
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 21.08.11, 19:26   #9 (permalink)
CDW
Moderator
 
Benutzerbild von CDW
 
Registriert seit: 20.07.05
CDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: Opteron
Likes: 202
Standard

Ich war mir nicht sicher, ob nur die Speicherung auf dem Datenträger gemeint war. Ansonsten ist das Stichwort "embedded db":
Eingebettetes Datenbanksystem
Embedded database - Wikipedia, the free encyclopedia
Da gibt es deutlich mehr, als SQLite und zudem komplett ohne Netzwerkkommunikation. Der Vorteil ist eben, dass so eine Anwendung dann relativ leicht auf "richtige" DB Systeme umgestellt werden kann (wenn dies tatsächlich gebraucht wird). Und es gibt die eher für alle gängigen Sprachen. Nachteile/Einschränkungen haben die eingebetteten DBs natürlich auch - diese halten sich aber in Grenzen (sofern man nicht stupide versucht mit einer eingebetteten DB eine "richtige" zu ersetzen )
Tarantoga and Woosh like this.
__________________
Noch mal, für alle Pseudo-Geeks: 1+1=0. -> 10 wäre Überlauf!
Selig, wer nichts zu sagen hat und trotzdem schweigt.
CDW ist offline   Mit Zitat antworten
Alt 22.08.11, 23:02   #10 (permalink)
Themenstarter
 
Registriert seit: 30.05.07
Woosh Leistung: Facit NTK
Likes: 0
Standard

OK, danke für die Antworten. Bei nächster Gelegenheit kommt das Ganze zum Einsatz :-)
Woosh ist offline   Mit Zitat antworten
Antwort

Stichworte
datei, daten, datenbank, speichern
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » Daten lokal speichern
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61