Anfängerfrage; Daten analysieren

Werbung:
Akretscher, Du hast recht die config erhält den Eintrag "1000".

Super, nun habe ich keine Rechte die config Datei im pgAdmin zu ändern. grrrrrr

Hat da auch jemand eine Idee? puhhh
 
Bug oder Feature, keine Ahnung. Vermutlich solltest Du in irgendeiner Form Adminrechte über Dein System haben und die Datei auf jeden Fall ändern können.
Das 1000er Limit kann Dir aber eigentlichauch egal sein, man macht eine Abfrage und schränkt über where Bedingung so ein, dass man das zurück bekommt, was man sehen möchte. Wer will 1000 Datensätze durchlesen oder 39000?

Toolvorschlag: OmniDB, DBeaver
 
Bug oder Feature, keine Ahnung.

Feature. Eine GUI benötigt nicht unerhebliche Ressourcen, und wer benötigt schon eine Anzeige von 40.000 Datensätzen? Diese Ergebnissmenge muß ja in der DB erstellt, irgendwie übertragen und dann in der GUI wieder der Speicher dafür allokiert werden. 40k Zeilen ist nicht viel, wie haben Kunden mit 40G Zeilen - und mehr.
 
Konnte die config.py nun auf 100000 Datensätze ändern. Beim Import habe ich allerdings nun eine Fehlermeldung.
  • FEHLER: zusätzliche Daten nach letzter erwarteter Spalte
  • CONTEXT: COPY import, Zeile 36764: »0144131München, Au«

Eigentlich hat meine Test.txt Datei 68295 Zeilen.
 
was ist der genaue Import-Befehl?

Code:
test=*# copy import from stdin csv;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself, or an EOF signal.
>> das, ist, text
>> \.
FEHLER:  zusätzliche Daten nach letzter erwarteter Spalte
CONTEXT:  COPY import, Zeile 1: »das, ist, text«
test=*#
test=*# copy import from stdin;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself, or an EOF signal.
>> das, ist, text
>> \.
COPY 1

Ich vermute also, Du hast da als Option CSV mit angegeben...
 
Feature. Eine GUI benötigt nicht unerhebliche Ressourcen, und wer benötigt schon eine Anzeige von 40.000 Datensätzen?
Sag ich ja, ich meinte die Möglichkeit, die conf zu editieren.

Hinweis:
Diese Einstellung hat nur etwas mit der Anzeige zu tun. Es werden natürlich trotzdem alle Daten verarbeitet (wenn keine Fehler auftreten)
 
was ist der genaue Import-Befehl?

Code:
test=*# copy import from stdin csv;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself, or an EOF signal.
>> das, ist, text
>> \.
FEHLER:  zusätzliche Daten nach letzter erwarteter Spalte
CONTEXT:  COPY import, Zeile 1: »das, ist, text«
test=*#
test=*# copy import from stdin;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself, or an EOF signal.
>> das, ist, text
>> \.
COPY 1

Ich vermute also, Du hast da als Option CSV mit angegeben...


Nee, ich hatte die Import-Funktion von pgAdin gewählt. Aber mit deinem Syntax habe ich die Daten nun in Postgres. Danke!
 
Danke! :)

Als nächstes muss ich ja wohl die ersten 7 Ziffern in eine neue Spalte bringen. In calc würde ich jetzt einfach =links(A1; 7) schreiben. Wie lautet denn die Funktion in sql?
 
Noch ein Hinweis zur initialen Importtabelle:
Spendiere dieser Tabelle gleich eine eigene Sortierspalte, am einfachsten eine vom Typ Serial. So erhält der Import automatisch eine vorgegebene Sortierung. Wie man sich bei der vorliegenden Struktur denken kann, ist es unvermeidlich, die exakte sequentielle Zeilenreihenfolge zu wahren bzw. garantieren zu können.
(innerhalb eines Satzes ist es am Ende egal, aber es dürfen jedenfalls keine Datensätze vermischt werden)
Willst oder kannst Du diesen Schritt schon zuvor garantieren (vor dem Import), so verwende ein geeignetes Verfahren mit OS Bordmitteln zur Ergänzung einer Spalte, die sortierte und sortierbare, eindeutige Werte je Zeile spendiert. In Linux relativ einfach, in Windows würde ich vermutlich ein Spreadsheet Programm dafür verwenden oder eine Linux Portierung der Bordwerkzeuge.

Wenn die Daten derart in der Importtabelle gelandet sind und Du eine Tabelle mit den Spaltennahmen (Keys) angelegt hast, brauchst Du nur ein einziges Select Statement um die Daten als Tabelle mit den neuen Spalten anzuzeigen oder in die endgültige (noch anzulegende) Tabelle einzufügen (Insert Statement)

Aber eins nach dem anderen..
 
Werbung:
Spendiere dieser Tabelle gleich eine eigene Sortierspalte, am einfachsten eine vom Typ Serial. So erhält der Import automatisch eine vorgegebene Sortierung.

Dieser Hinweis ist gut und richtig. PostgreSQL kann aus diversen Gründen ein 'select * from table' von Lauf zu Lauf in unterschiedlicher Reihenfolge liefern. Kein Bug, sondern dokumentiertes Feature. Warum das so ist kann ich bei Interesse erklären, aber nicht hier im MySQL-Forum.
 
Zurück
Oben