AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi csv-datei automatisch in db einlesen
Thema durchsuchen
Ansicht
Themen-Optionen

csv-datei automatisch in db einlesen

Ein Thema von hgiel · begonnen am 6. Sep 2006 · letzter Beitrag vom 6. Sep 2006
Antwort Antwort
Seite 1 von 2  1 2      
hgiel

Registriert seit: 4. Apr 2005
61 Beiträge
 
#1

csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 16:02
Datenbank: noch nicht klar, s.u. • Zugriff über: möchte ich aus delphi heraus
hallo,

bin blutiger db-anfänger.

ich möchte ein csv-datei ( feldtrenner ist ein ";" ) in eine datenbank einlesen.

die db (ob paradox oder dbase weiß ich noch nicht - was ist besser?) sollte beim programmstart - falls nicht schon vorhanden - irgendwie automatisch erzeugt werden und dann alle datensätze/feldinhalte der csv-datei einlesen

dies alles wollte ich mit der brandneuen turbo delphi explorer version realsieren - geht das? und kann mir einer einen tip dazu geben?

danke und gruß

hgiel
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#2

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 16:28
Hallo hgiel,

Zitat von hgiel:
ob paradox oder dbase weiß ich noch nicht - was ist besser?
Das kann man pauschal sowieso nicht beantworten - meistens neigt sich die Waage zugunsten von Paradox. Aber beide Systeme sind sehr alt; deshalb kommt es darauf an, wie viele Datensätze es sind, ob der Import einmalig oder mehrfach wiederholt stattfinden soll und was Du danach mit den eingelesenen Daten anfangen willst. Dazu bräuchten wir weitere Angaben.

Zitat von hgiel:
die db ... sollte beim programmstart - falls nicht schon vorhanden - irgendwie automatisch erzeugt werden
Das ist faktisch unmöglich (es gibt Situationen und Verfahren, mit denen man es trotzdem regeln kann, aber für einen Anfänger möchte ich darauf zunächst nicht eingehen): In einer CSV-Datei stehen nur die Feldnamen, aber weder Datentyp noch max. Feldlänge - und das sind die Minimalinformationen, die man für das Erzeugen einer Tabelle benötigt.

Zur Prüfung kannst Du (sofern vorhanden) einmal unter Excel den Assistenten durchlaufen lassen: Daten | Externe Daten | Textdatei importieren. Dort siehst Du, welche Varianten zu beachten sind.

Zitat von hgiel:
dies alles wollte ich mit der brandneuen turbo delphi explorer version realsieren - geht das?
Ich habe mich bisher nicht mit den Turbo-Versionen beschäftigt, aber ich bin mir sicher, dass Du dazu noch Hilfe bekommst.

Gruß Jürgen

[/edit]Korrektur des Fehlers, auf den Christian Seehase #3 hingewiesen hat.
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 16:40
Moin hgiel,

Zitat von hgiel:
dies alles wollte ich mit der brandneuen turbo delphi explorer version realsieren - geht das?
da es sich dabei im Prinzip um eine BDS 4.0 (D2006) Pro handelt, die halt nur eine Sprache unterstützt, sollte das gehen.
AFAIK betreffen die Einschränkungen der Explorer-Version nicht die mitgelieferten Komponenten, und Datenbank-Komponenten sind im BDS 4.0 enthalten.
Du musst nur mit dem vorlieb nehmen, was mit geliefert wird, da man keine Komponenten nachinstallieren kann.

[EDIT]
@Jürgen:
Zitat von Jürgen Thomas:
aber ich bin mir nicht sicher, dass Du dazu noch Hilfe bekommst.
Bist Du sicher, dass Du das "nicht" schreiben wolltest?
[/EDIT]
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 16:45
Zitat:
ob paradox oder dbase weiß ich noch nicht - was ist besser?
Es ist eher hier der Frage: was ist schlechter?
Markus Kinzler
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#5

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 16:47
Zitat von Christian Seehase:
Bist Du sicher, dass Du das "nicht" schreiben wolltest? ;-)
Schreck lass nach! Da bin ich so stolz auf mich, dass ich selbst Korrektur lese, und dann geht mir so ein Lapsus durch. Natürlich wird das sofort korrigiert - die DP hilft doch fast immer. Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 17:12
Hallo,

also das Erzeugen geht schon, die Frage ist nur,
was bringt eine DB-Struktur,
die man zur Laufzeit erst kennt,

Man müsste ja dann z.B. "auf Verdacht" Indizes anlegen,
von einer Oberfläche ganz zu schweigen.

Zu Pdx/DBase wurde weiter oben schon alles gesagt (blooooos nicht nehmen )

Die Frage ist für mich ist, was steht in der csv,
was soll das Programm damit machen nach dem Einlesen.

Heiko
Heiko
  Mit Zitat antworten Zitat
hgiel

Registriert seit: 4. Apr 2005
61 Beiträge
 
#7

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 19:36
hallo,

zunächst einmal vielen dank für die antworten/anregungen

eigentlich steht die db-struktur (felder) fest, so daß man die "äußere schale" sicher auch schon vor dem eigentlichen start festziehen könnte:

Anmeldedatum;Anmeldezeit;Dienstnr;Stiftnr;Zugnr;Wa gennr;Produkt;ServerSNR;ServerPNR;SystemNR;TakaSNR _Gastro;TakaPNR_Gastro;TakaSNR_Wartung;TakaPNR_War tung;manuell angemeldet;Abrech ohne Taka;Speisekarte übertragen;Speisekarte erstellt;Problem Kundendisplay;NL Stift;NL Dienst;Copy Fehler;Wagen Beheimatung
31.10.05;07:29;010001;104279150;2083;85940723;IC-BISTR; ;3.50;072;10455695;3.50;10555913;3.50; ; ;J; ; ;Hamburg;Hamburg; ;Hamburg
01.11.05;08:21;010001;104279150;2082;85940723;IC-BISTR;10469441;3.50;072;10455695;3.50; ; ; ; ;J; ; ;Hamburg;Hamburg; ;Hamburg
31.10.05;12:21;010003;104452450;2373;85944063;IC-BISTR;10499627;3.50;906;10455774;3.50; ; ; ; ;J; ; ;Hamburg;Hamburg; ;Hannover
01.11.05;04:39;010003;104452450;2378;85944519;IC-BISTR;10499790;3.50;951;10455774;3.50; ; ; ; ;J;J; ;Hamburg;Hamburg; ;Hannover
...

diese daten entstehen täglich/nächtlich durch ein von mir in delphi geschriebenes auswerteprogramm. bis dato analysiere (sortieren, filtern, abfragen) ich diese datei dann in excel - aber ich würde dies schon ganz gerne in delphi (deshalb der wunsch nach einer db) machen

in der vergangenheit habe ich solche dateien immer "nur" in ein normales stringgrid eingelesen und angezeigt (und bei jeder veränderten selektion die csv-datei wieder komplett neu eingelesen), aber in einer db sind die möglichkeiten sicher deutlich größer und wahrscheinlich auch performanter?!

dies zur veranschaulichung und verdeutlichung meiner motivation

gruß

hgiel
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 19:41
Es gibt auch CSV-dataSets, welche die CSV als datenbanktabelle anspricht (Z.B. als Teil der JVCL oder kbnmemtable)
Markus Kinzler
  Mit Zitat antworten Zitat
hgiel

Registriert seit: 4. Apr 2005
61 Beiträge
 
#9

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 19:46
JVCL oder kbnmemtable ???????????????????????? noch nie gehört!?

läßt sich dies mit der turbo explorer nutzen?

vielleicht kannst du es auch noch ein wenig ausführlicher erklären?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: csv-datei automatisch in db einlesen

  Alt 6. Sep 2006, 19:50
Zitat:
läßt sich dies mit der turbo explorer nutzen?
Jein, du mußt die entsprechende Komponente manuell erzeugen, da die Explorer keine Installation von weiteren Komponenten zuläßt.

http://sourceforge.net/project/showf...group_id=45786
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz