Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Txt.File zu DB kopieren ? (https://www.delphipraxis.net/138207-txt-file-zu-db-kopieren.html)

aaaaaaaaaa_10 5. Aug 2009 07:10


Txt.File zu DB kopieren ?
 
Ich habe eine Textdatei und möchte daraus nun eine Datenbank erstellen. Kann ich den Inhalt einfach kopieren? Oder was muss ich beachten?

mkinzler 5. Aug 2009 07:23

Re: Txt.File zu DB kopieren ?
 
Was für eine Datenbank (DBMS)?

aaaaaaaaaa_10 5. Aug 2009 07:29

Re: Txt.File zu DB kopieren ?
 
welche hab ich denn zus auswahl?

Bernhard Geyer 5. Aug 2009 07:29

Re: Txt.File zu DB kopieren ?
 
Was beinhaltet die Textdatei? Dateninhalt oder SQL-Statements?

mkinzler 5. Aug 2009 07:34

Re: Txt.File zu DB kopieren ?
 
Zitat:

Zitat von aaaaaaaaaa_10
welche hab ich denn zus auswahl?

Unzählige
FireBird, PosGresSql, MSSQL, Oracle, DB2, MySQL, ...

aaaaaaaaaa_10 5. Aug 2009 07:34

Re: Txt.File zu DB kopieren ?
 
Dateninhalt (also so ne art tabelle)

Jens Hartmann 5. Aug 2009 07:51

Re: Txt.File zu DB kopieren ?
 
Hallo,

schau dir mal Firebird an, die ist kostenlos und sehr gut. Als momentan kostenlose Komponente zum üben kannst Du ja mal nach ZEOS suchen. Soll zwar nicht so gut sein, funktioniert aber bei mir fehlerfrei und zum testen aufjedenfall OK.

Gruß Jens.

PS: Zum anlegen einer Firebird Datenbank empfehle ich dir IB-Expert.

aaaaaaaaaa_10 5. Aug 2009 08:01

Re: Txt.File zu DB kopieren ?
 
Delphi-Quellcode:
procedure TMomFiles.DatenbankErstellen;
var //ZehnMin, Datenbank : string;
    t : TTable;
    sl : TStringList;
    i : integer;
begin
    sl := TStringList.Create;
    try
      sl.Delimiter := #9;
      sl.DelimitedText := TabHead; //Tabellenkopf

      t := TTable.Create(nil);
      with t do
      begin
        Close;
        DataBaseName := ExtractFilePath(application.exename);
        TableName := ExtractFilePath(application.exename)+'Datenbank_'+Kennung+'.db';
        TableType := ttParadox;

        with FieldDefs do
        begin
          Clear;
          for i := 0 to sl.Count-1 do
          begin
            Add(sl.Strings[i], ftFloat,0,False);
          end;
        CreateTable;
        end;
      end;
    finally
      Free;
      sl.Free;
    end;
    DatenbankFuellen;
end;
Das hab ich bisher gemacht und es wird auch eine DB erstellt. Aber wie bekomme ich da jetzt Werte rein?

DeddyH 5. Aug 2009 08:09

Re: Txt.File zu DB kopieren ?
 
Dafür brauchst Du 2 Schleifen. Die erste geht die Datei zeilenweise durch und zerlegt die aktuelle Zeile in die einzelnen Werte. Diese gehst Du dann in einer 2. Schleife durch und trägst sie in die Tabelle ein.
Delphi-Quellcode:
Table.Append;
for i := 0 to Werte.Count - 1 do
  Table.Fields[i].Value := Werte[i]; //ggf. vorher konvertieren
Table.Post;
Oder Du nimmst eine Query statt einer TTable, dann kannst Du das SQL einmalig anlegen und weist nur noch die Parameter zu.

aaaaaaaaaa_10 5. Aug 2009 10:20

Re: Txt.File zu DB kopieren ?
 
Klappt alles super.danke.

gibt es die mgl. die erste zeile aus der DB zu löschen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:25 Uhr.
Seite 1 von 2  1 2      

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