Hallo, weiß jmd. bis zu welcher Größe sich eine XML Datei als Datenbankersatz lohnt? Und weiß jmd. gute Tutorials zu XML Dateien? Ich möchte nicht an ein Programm am Zielpc gebunden sein wie MSXML. Danke schonmal im vorraus
XML als Datenbankersatz? Das ist nur ein (wenn auch sehr gut) strukturiertes Textdateiformat, alle Datenbank"intelligenz" müsste also in der von Dir verwendeten XML-Bibliothek liegen. Da XML selbst kein Datenbankformat ist, ist zu bezweifeln, daß die XML-Bibliothek da besonders viel Unterstützung liefert. Für kleine "single-user"-Anwendungen (nur ein Programm greift auf die Datenbank zu) eignet sich SQLite, das kann seine Daten wahlweise in einzelnen Dateien oder sogar nur im Arbeitsspeicher halten, und wird als Library zum Programm gelinkt. Für Delphi sollte es ein Binding geben, notfalls musst Du eine DLL verwenden. Vorteil: Du kannst SQL-Statements verwenden, um auf Deine Datensätze zuzugreifen und musst nicht einen XML-Parser um datenbankartige Funktionen erweitern. SQLite ist public domain http://www.sqlite.org/ Und hier sind Interfaces zu anderen Programmiersprachen als C aufgelistet, auch einige für Delphi: http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
Ein File als Datenbank ... fuer eine serioese Performance haelt man das File natuerlich decodiert im Memory. Wieviel Memory kannst du eruebrigen ? Ich wuerd da bis 300MByte gehen. Aha. die serioese Performance ist nicht gefragt. Man kann also bei jeder Anfrage das File lesen und parsen. Der Hammer wird das nicht ...
lesen mag ja noch gehen, aber einfügen in einer XML führt dazu das alles anderen Daten nachrutschen müssen. Ich halte den XML ansatz für dumm. XML ist werder für einen Computer sinnvoll lesbar (der Aufwand ist viel größer als bei einer binary datei) noch ist es für einen Menschen schön lesbar. XML hat es geschafft die Nachteile von Textdateien mit den nachteilen von Binary Dateien zu kombinieren.
Peter II schrieb: > XML hat es geschafft die Nachteile von Textdateien mit den nachteilen > von Binary Dateien zu kombinieren. Wenn's schneller und lesbarer sein soll -> JSON p.s. in .NET wäre XML + XSD als Datenbankersatz ein Zwei/Dreizeiler (scnr) DataSet ds = new DataSet(); ds.ReadXML(fileName); dataGrid.DataSource = ds.Tables(0);
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.