vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Textdatei als Datenbank 
Autor: Rene Rose
Datum: 23.09.06 11:09

Hallo User!

Ich habe Börsenkursdaten als Textdateien vorliegen. Die Daten liegen dabei in einer Spaltenstruktur vor. Ich lese die Daten in eine Tabelle ein und zeige diese dann in einem Datagrid an. Das Ziel soll sein, die Daten an hand der zeitlichen abfolge zu sortieren. Jede Datei enthält Daten von mindestens 6 Kalendermonaten, die auch über dem Jahreswechsel verteilt sein können.

Mein geplantes Vorgehen:

Zerlegen der Datei in einzelne Kalenderjahre
Zerlegen jedes kalenderjahres in einzelne Monate
Zerlegen jedes einzelnen MOnats in Tage

Sortieren jedes einzelnen Tages in zeitlicher Abfolge

Um mir aufwendige Arrayoperationen zu ersparen, war meine Idee, das zerlegen mit Hilfe von sql Abfragen zu erledigen, ebeso wie die Sortierung. Nun fehlt mir der ansatz, wie ich die Daten aus der Tabelle, wie eine Datenbank behandeln kann und Abfragen durchführen kann.

Vielleicht kann mir jemand einige Tipps zu groben Vorgehen geben. Die Dokumentation in Visual Studio ist zwar super umfangreich, jedoch fehlt mir soetwas wie ein grober Leitfaden.

Vielen Dank!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: bfritz
Datum: 24.09.06 19:37

Hallo Rene Rose
Stelle einen Auszug aus den Textdateien ins Forum und es wird dir sicher
einer helfen.
PS: Mit melcher Datenbank arbeitest du, mit welchem Datenbankzugriff arbeitest du???
m.f.G. bfritz
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: Rene Rose
Datum: 25.09.06 07:46

Hallo Fritz!

Ich arbeite mit keiner Datenbank. Ich habe die Daten als Textdateien vorliegen. Die Börse liefert große Zip Dateien, aus denen anschließend die einzelnen Wertpapiere aussortiert werden müssen. Ist das geschahen, erzeuge ichn folgendes Format:

2004-04-21T09:00:19.920;2815;111
2004-04-21T09:00:20.560;2814;50
2004-04-21T09:00:20.560;2815;2
2004-04-21T09:00:21.370;2815;10

Du siehst, die Daten liegen Zeilenweise vor, jedes Geschäft eine Zeile mit Datum und Zeit, inkl. Millisekunden, sowie Kurswert und Stückzahl. das Problem ist nun, dass die Sortierung nicht immer der zeitlichen korrekten Reihenfolge entspricht. Anscheinend werden hier hunderte von Zeilen verschoben abgelegt. Genau das muss ich ändern. Das Problem liegt auch in den großen Datenmengen. Eine Datei enthält bis zu 100 MB. Jedes dieser Instrumente (Futures) wird über mehrere Monate, verteilt in einem oder zwei Kalenderjahren gehandelt.

Ich habe jetzt schon folgende Vorbereitungen getroffen:

Mein Programm erzeugt eine Collection, die zwei mehrdimensionale Arrays enthält. Jedes Array hat 12 und 31 Dimensionen. Über die Datumsangabe in den Kursdaten kann ich so die Daten schnell den einzelnen Kalendertagen eines jeden Monats zuordnen. Jeder Kalendertag ist wiederum eine Collection, die nun alle Kursdaten dieses Tages enthält. das ganze geht recht flink und ist in 30-45 Sekunden einsortiert.

Die Aufgabe ist nun, jede Tagescollection zeitlich korrekt zu sortieren und zwar nach:

Stunde, Minute, Sekunde, Millisekunde

Hier scheitere ich derzeit, weil mir ein Konzept fehlt. Kann ich denn eine Collection oder eine daraus erzeugte DataTable, wie eine Datenbank behandeln und vielleicht mit sql sortieren? Früher hatte ich mal eine einfache Variante davon in Acess geschrieben. Ich habe die einzelnen Handelstage via Abfrage getrennt und diese dann mit sql sortiert. Wie mache ich das nun in VB.Net???

Vielen Dank schon einmal für die Hilfe
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: wb-soft
Datum: 25.09.06 10:03

Hi!

Für .NET bist du hier im falschen Forum.

Suche nach "extended properties" und "schema.ini". Damit findest du die Verwendung einer Textdatei als DB unter VB6/ADO. Vielleicht hilft es dir auch bei .Net.


mfg

WB
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: bfritz
Datum: 27.09.06 09:36

Hallo Rene Rose
Du könntest die Daten in eine temporäre Tabelle einlesen. Dann hast du alle
SQL-Möglichkeiten zur Verfügung.
Ich habe mit "SQLite" folgenden Test durchgeführt:
1. Erstellen einer temporären Tabelle mit 4 Spalten
2. Füllen der Tabelle mit 300000 Datensätzen(=ca 10MB Datenmenge)
3.Öffnen der Tabelle und sortieren der Datensätze nach Datum und Zeitspalte
4. Ausgabe aller 300000 Datensätze auf Platte
Gesamter Zeitaufwand dabei 23-30 Sekunden.
m.f.G. bfritz
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: Rene Rose
Datum: 27.09.06 09:44

Hallo!

Vielen Dank für die Informationen! Die Performancedarstellung klingt beeindruckend. jetzt muss ich nur noch verstehen, wie genau vorzugehen ist.

Eine Textdatei in eine Tabelle einlesen ist ja kein problem. aber wie kommt dieses SqLite ins Spiel? Die Dokumentation auf der Webseite von SQLite ist ja eher dürftig.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: bfritz
Datum: 27.09.06 10:25

Hallo
Lade dir von der Seite:
http://www.terrainformatica.com/sqlitedb/downloads.whtm
die "SQLiteDb Free Version" herunter. Dann hast du genügend
Beispiele für SQLite.
m.f.G. bfritz
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textdatei als Datenbank 
Autor: Rene Rose
Datum: 27.09.06 10:29

Gut, vielen vielen Dank! das reicht für ein Wochenende!

Viele Grüße von Rene
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel