Entwickler-Ecke

IO, XML und Registry - Data-File (Lokale Datenbank in Datei Form) wie?


avoid - So 01.04.12 14:30
Titel: Data-File (Lokale Datenbank in Datei Form) wie?
ich benötige für meine elektronik basteleien zukünftig eine möglichkeit daten,
in einer lokalen datei ab zu legen wie in einer datenbank.

konkret werden über den serialport status daten von mehreren geräten empfangen
und diese will ich zum einen tabelarisch darstellen und zum anderen speichern.

da mein programm ohne Installation laufen soll kommt sql oder andere richtige datenbanken nicht in frage.
ich habe gelesen das dafür ein Data File, eine datei in der ich daten ablege, das richtige sein soll.

weil ich Visual C# 2010 Express benutze stellt sich mir nun die frage welches dateiformat
das richtige für meine zwecke ist und wie ich es verwenden kann.

ich könnte mir z.b. eine .mdb vorstellen wenn man nicht extra access haben muß um damit arbeiten zu können.
XML ist doch auch sowas in der art, wenn ich mich nicht irre.

gruß, avoid


Th69 - So 01.04.12 14:47

Hallo,

je nach Umfang der Daten reicht dafür sicherlich eine einfache Textdatei (CSV, XML, ...).
Du könntest aber auch eine sog. Embedded Datenbank (SqLite, SQL Compact, Firebird Embedded, ...) verwenden, dann benötigst du außer der lokalen Datenbankdatei nur einige DLLs die du in das Anwendungsverzeichnis kopieren mußt.


avoid - So 01.04.12 18:16

ich habe jetzt mal testhalber ein dataSet mit bindingSource, bindingNavigator und dataGridView erstellt.
dem bindingNavigator hab ich noch eine schaltfläche zum speichern in eine xml verpasst.
beim laden der anwendung frage ich ab ob die xml datei vorhanden ist, wenn ja lade ich sie in das dataSet.

so einfach hatte ich mir das garnicht vorgestellt. ;)
dachte xml ist total komplex.

jetzt hab ich nur noch zwei kleine folge problemchen.
-----------------------------------------------------
ich hab eine id-spalte mit int32 als auto_increment primary key festgelegt die nicht dargestellt wird.
das war quatsch oder?
sowas macht wohl in meinem fall keinen sinn wenn ständig daten rein kommen und raus fliegen.
wenn ich die id-spalte wieder raus mache, kann das zu problemen führen?

mit welchem event des dataGridView sorge ich am einfachsten dafür,
das jede änderung in die xml gespeichert wird?

p.s. test-projekt ist angehangen.

gruß, avoid