Anfängerfrage; Daten analysieren

Oder eine Mischung. Ein paar Stammdaten & ein paar dynamische Daten.
Ich denke man kommt hier schnell an die Grenzen von SQL und macht den Import mit einem Script. Da ist eine flexible Anzahl von Spalten möglich.
 
Werbung:
die Dynamic nützt ja nichts im Script, wenn am Ende alles in eine "feste" Tabelle muss.

Ich würde es so machen:
alles laden in eine Spalte
aus der Spalte erste7Ziffern distinct auflisten und als SpaltenID in eine Tabelle schreiben. Namen Spalte ergänzen (Tipparbeit). Der Schritt ist eigentlich nur fürs auge/Handling
Anhand dessen würde ich die Zieltabelle erstellen, bzw. das als Mapping benutzen.

Eingelesene Daten dann in die Zieltabelle transformieren.

Zieltabelle analysieren

Man könnte das variieren wie schon von akretschmer geschrieben mit etwas dynamischen JSON Feldern.
 
Ich bin ein wenig "lost"....

Also habe nun Postgres installiert und eine Tabelle angelegt mit ID und Data und habe die Textdatei mit den Daten nun auf nun auf C:\Test\test.txt liegen.

CREATE TABLE public."1_Q3" (
ID SERIAL, Data varchar (200)
);

Nun fehlen mir noch die Daten...
Würde mir jemand den SQL Befehl mitteilen, wie ich die Daten nun übernehme ?
Oder acht die erstellte Tabelle mit ID und Data keinen Sinn?

VG Peter
 
also zuerst:
Wenn Du mit Buchstaben beginnst beim Tabellennamen, kannst Du Dir diese ganze Tick Geschichte von Mysql sparen. Sprechende Tabellennamen sind auch ne dankbare Sache. (Ebenso wie sprechende Spaltennamen, sonst kann es im Prinzip auch bei Nummern bleiben)

Für den Import hast Du in Beitrag #3 Anfängerfrage; Daten analysieren
schon eine Vorlage von @akretschmer. copy ... ist Dein Freund.
 
grrrrrr..... Eigentlich dachte ich, dass ich das Kopieren schon beherrsche. Naja, leider wohl nicht so ganz :-(

1. create table import(t text);

Super, die Tabelle ist da :)

2. copy import from 'C:\Test\1_Q3.txt' ;

Fehler: ERROR: FEHLER: ungültige Byte-Sequenz für Kodierung »UTF8«: 0xdf 0x65 CONTEXT: COPY import, Zeile 7 SQL state: 22021

Habe ich was falsches eingestellt oder doch falsch Kopiert?

VG Peter
 
scheint so, als ob die Datei kein valides UTF8 ist. Stehen in Zeile 7 Umlaute? Probier mal den copy-Befehl mit der Option

Code:
copy ... encoding 'windows-1251';
 
Hast Du denn ein anderes Encoding gewählt?
Gibt es weitere Fehlermeldungen?

Daten Import (erst Recht von Quellen aus Menschenhand) ist oft etwas frickelig.

Vermutungen:
Nach Zeile 1000 gibt es "seltsame Zeichen" in der Datei
oder es fehlen einfach Zeilenumbrüche oder die Zeilenumbrüche sind anders codiert.
Ergebnis wäre, dass die restlichen Daten alle in der 1000sten Zeile landen.
Hier hilft u.U. ein guter Editor (mit Hexmode) um sich mal die Datei anzuschauen.
 
Danke dabadepdu,

Nee, alles sieht super aus, nur das eben gerade mal "nur 1000" Zeilen da sind. Als wenn irgendwo der Import auf 1000 Zeilen beschränkt wäre.

Query returned successfully in 639 msec.
 
Danke dabadepdu,

Nee, alles sieht super aus, nur das eben gerade mal "nur 1000" Zeilen da sind. Als wenn irgendwo der Import auf 1000 Zeilen beschränkt wäre.

Query returned successfully in 639 msec.
Naja, "sieht super aus" kann ja nicht ganz stimmen. Wenn man sich weit genug weg stellt, sehen viele Sachen super aus.
Was sieht denn eigentlich super aus? Die Quelldatei oder das Ergebnis?

Vielleicht eine doppelte Leerzeile oder nicht "druckbare" Zeichen in der Quelle, wie gesagt, ich hätte schon lange den Hexeditor am Start. Für Kontrolle des Imports natürlich ein DB Tool.
 
Werbung:
Zurück
Oben