SQL Tool zum zuordnen gesucht

FrazeColder

Lt. Commander
Registriert
Okt. 2013
Beiträge
1.721
Moin zusammen,

ich suche derzeit nach einem Tool, welches mir ganz einfach Dateien zuordnen kann. Ich habe ganz viele PDF Files und möchte die gerne einer Kategorie in meiner Datenbank zuordnen. Da das händisch zu lange dauern würde, suche ich eben genau so ein Tool, welches das ggf. per Drag and Drop für mich erledigen kann.

Habt ihr da eine Idee, wie ich das am schnellsten machen kann oder ob es so ein Tool gibt?

MfG und Vielen Dank
 
Dass es ein Tool gibt, was genau macht was du willst, glaube ich kaum. Aber wenn du direkt mit SQL arbeitest und vermutlich auch etwas mit der Datenbank anfangen willst, dann kannst du wohl zumindest minimal programmieren. Schreib doch einfach ein kleines Script, welches das nach Dateinamen oder Ordnerstruktur erledigt, sofern die gewünschte Kategorie daran abzuleiten ist.

Ist ja nur Ordner lesen+Schleife, ggf. Rekursion für Unterordner. Das kann jede Sprache (z.B. PHP, JS (Node) oder Python) ganz einfach in ein paar Zeilen.
 
Das Tool nennt sich Kommandozeile + Excel.
In Kommandozeile Ergebnis von dir in Datei umleiten, die in Excel öffnen und eine Formelspalte bauen die Inserts bastelt aus den Dateinamen. Das ganze dann mit dem Tool Deiner Wahl einspielen
 
Wäre es nicht die simpelste und naheliegendste Lösung - wenn du sowieso schon eine Datenbank nutzt - einfach eine Entität Document mit den für dich relevanten Attributen bzw. Feldern zu erstellen, von denen dann eines "category" ist?

Dazu müsstest du diesen Wert lediglich an der Stelle, wo die Dateien bei dir ins System importiert werden, setzen (bspw. an einer REST-API oder bei einem User-Upload). Ein weiteres Attribut bzw. Feld könnte den Dateinamen beinhalten, um für Dateioperationen stets den Ablageort in der Verzeichnishierarchie berechnen zu können.

Gerade bei einer großen Anzahl an Dokumenten sind Datenbankoperationen imho deutlich performanter als Dateisystemoperationen.
 
Das geht automatisiert nur, wenn eine solche Zuordnung in irgendeiner Form ableitbar ist. Wenn da eine Datei 1.pdf da ist und eine Datei 2. pdf und eine Datei 3.pdf und zwei sollen in eine Kategorie und eine in eine andere..... dann wissen weder wir das, noch kann es irgendein Automatismus feststellen.

Wenn andererseits die bewußte Kategorisierung doch irgendwo untergebracht ist (Tip: calibre bringt Kommandozeilentools mit für das Ermitteln von Metainformation aus Dokumenten, incl PDF) dann sieht das schon wieder ein wenig anders aus.

Wenn die Zuordnung manuell stattfinden *muß*, weil es keinen anderen Weg gibt, dann kann man das genausogut per strukturiertem Textdokument machen. Zum Beispiel eben CSV. Aber eine simple Zuordnung x-Tabulator-f(x) oder sonst einem klar definierten Trennzeichen reicht auch. DBMS lesen das dann für einen ein (üblicherweise Variationen von LOAD DATA).
 
RalphS schrieb:
Das geht automatisiert nur, wenn eine solche Zuordnung in irgendeiner Form ableitbar ist. Wenn da eine Datei 1.pdf da ist und eine Datei 2. pdf und eine Datei 3.pdf und zwei sollen in eine Kategorie und eine in eine andere..... dann wissen weder wir das, noch kann es irgendein Automatismus feststellen.

Warum?

Wenn in diesem Fall hier ein User Dateien hochladen kann, dann baut man im Formular schlicht ein Selectfeld "category" mit ein und validiert dies auf nicht leer.

Wenn die Dateien aufgrund der automatisierten Kommunikation zweier Maschinen über eine REST-API ins System kommen, dann muss man, wenn diese Anforderung der Kategorisierung so wichtig ist, eben das abgebende System diese Information liefern lassen (bspw. im Namen einer jeden Datei oder über einen Custom-HTTP-Header). Wenn eine definierte Schnittstelle dies nicht liefern oder eine solche Erweiterung nicht vertragen kann, ist sie schlichtweg Schrott.

Eine weitere Möglichkeit wäre (falls die technischen Voraussetzungen vorhanden sind), dass das aufnehmende System diese Information aus dem Inhalt einer jeden Datei ausliest (auch wenn sie nur 1.pdf usw. heißen).

Zudem gibt es eigentlich keinen Grund, wenn man sowieso schon eine Datenbank benutzt, Daten zusätzlich noch auf eine andere Art zu speichern.
 
alxtraxxx schrieb:
Das Tool nennt sich Kommandozeile + Excel.
In Kommandozeile Ergebnis von dir in Datei umleiten, die in Excel öffnen und eine Formelspalte bauen die Inserts bastelt aus den Dateinamen. Das ganze dann mit dem Tool Deiner Wahl einspielen
Und das ist keine Datenbank.
 
Webentwickler schrieb:
Warum?

Wenn in diesem Fall hier ein User Dateien hochladen kann, dann baut man im Formular schlicht ein Selectfeld "category" mit ein und validiert dies auf nicht leer.

...

Wo liest du das alles raus? Der TE hat nicht von einer Website, Dateien uploaden oder sonstwas gesprochen, er hat einfach nur einen Haufen pdf Dateien.

e-Funktion schrieb:
Und das ist keine Datenbank.

Die hat er ja auch schon ;)
Inserts mit Excel basteln ist ganz genau das, was ich auch tun würde.

Ansonsten die Frage besser/genauer Stellen.
 
Enurian schrieb:
Wo liest du das alles raus? Der TE hat nicht von einer Website, Dateien uploaden oder sonstwas gesprochen, er hat einfach nur einen Haufen pdf Dateien.

Mangels präziser Angaben habe ich einfach mal in die magische Glaskugel geschaut und ein paar Möglichkeiten aufgezählt.
 
e-Funktion schrieb:
Und das ist keine Datenbank.
Ich kann das mit dieser Lösung in jede beliebige Datenbank mit den erzeugten Skripten einfügen, Du scheinbar nicht.
 
Siehst Du und Programmiersprachen wären für mich hier wenns was einmaliges ist viel zu aufwendig, 2 verformelte Spalten maximal rein und fertig ists ;)
Das ist fertig bevor Visual Studio geöffnet ist ;) Vermutlich gehts mit egrep und Co noch schneller sofern man da geübt ist
 
Solang wie die Datenbank strukturierte Daten lesen kann, zB eben per LOAD DATA, braucht man nicht mal die Scripts.
 
Zurück
Oben