![]() |
txt & sql (max-Abfrage)
Ich habe eine Tabelle (Users), die folgendermaßen aufgebaut ist:
LastLogon...UserName..Comment..ServerName 22.03.04....Schimek............S-01-07 23.03.04....Schimek............S-02-08 19.03.04....Meier.....wichtig..S-01-07 Davon ungefähr 40.000 Datensätze. Ich habe das ganze in einer txt-Datei vorliegen. Nun möchte ich die Datensätze so rausfiltern, dass der Name nur noch einmal auftaucht und zwar mit dem maximalem Datum. Angezeigt werden soll dabei dann auch noch die Spalte Comment und ServerName. Ich habe mir das für SQL mal so hingebastelt: SELECT Users.UserName, Max(Users.LastLogon) AS [Letzter Logon] FROM Users GROUP BY Users.UserName; Kann ich die Daten der txt-Datei auch irgendwie mit einem SQL-Statement anpacken? Oder gibt es eine andere Möglichkeit? |
Re: txt & sql (max-Abfrage)
Du kanst versuchen mittels ADO und ADO-Access-Treiber diese Textdatei einzulesen.
Ein Beispiel wie das gehen könnte findest Du bei ![]() |
Re: txt & sql (max-Abfrage)
Hi,
wenn das txt-File z.B. im csv-Format vorläge, könntest du es ja einfach mal in eine MySQL-DB reinladen (load_from_file), sortieren, filtern, was du möchtest und das Ergebis wieder in eine csv-Datei exportieren. :hi: |
Re: txt & sql (max-Abfrage)
Ja, in eine MySql-DB wär für mich auch in Ordnung. Nur dann muss ich ja auf meinem Server wieder ne extra Datenbank anlegen. Die Spalten oben sind ja nicht die einzigen. Den Spalten folgen noch 17 weitere.
Wie bringe ich denn nun die txt-Datei in eine My-Sql-Datenbank? |
Re: txt & sql (max-Abfrage)
Au sorry, da hatte ich vorhin im Eifer des Gefechtes einen falschen Befehl angegeben.
Richtig wäre ![]() Alternativ kannst Du Dir ja auch ein kleines Progrämmchen machen, welches Dein txt-File zeilenweise in die DB schreibt. |
Re: txt & sql (max-Abfrage)
Hab gerade eine Import-Funktion in dem SQL-Server-Manager gefunden, die auch txt-Dateien verarbeiten kann.
|
Re: txt & sql (max-Abfrage)
Das geht eigentlich ganz easy über MS Jet. ;)
![]() Sind deine Daten nach FixedLength getrennt brauchst du zwingend eine Schema.ini in dem Ordner, die sollte so aussehen:
Code:
Jetzt kannst du ganz easy deine Daten mit gewohnten SQL Statements abfragen:
[DeineTextDatei.txt]
Format=FixedLength Col3=SpaltenNamefürCol3 Text Integer 3 Col1=SpaltenNamefürCol1 Text Width 3 Col2=SpaltenNamefürCol2 Text Width 10
SQL-Code:
/**/
SELECT DISTINCT SpalteX FROM [DeineTexdatei.txt] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz