Melde mich auch mal wieder zurück.
Versuche gerade daten die ein shell skript entgegennimmt in die datenbank (version 8.3) zu schreiben. Sobald das geht sollten auch daten von einem Skript aus der DB geholt werden.
Habe es volgendermassen versucht, bis jetzt ohne Erfolg. Im folgenden Beispiel habe ich die Werte die in die DB sollen einfach durch testeintrag1-4 ersetzt, einfach mal zum testen.
Es funktioniert mit dem eintragen in die DB, danke nochmal!
Nun kämpfe ich noch mit dem Abrufen und in Variablen “verpacken” der Daten.
Habe mal ein kleines Script erstellt welches mir einfach die gewünschte Abfrage ausführt. Nur mal um zu sehen wie sich das ganze skripten lässt.
#!/bin/bash
psql meinedatabase -U meinuser <<ENDOFSQL
SELECT username FROM tbl_users where id=7;
ENDOFSQL
exit 0
Wenn ich das Skript ausführe erhalte ich folgendes zurück:
username
----------
100008
(1 row)
Der ausgegebene Wert, in diesem Fall 100008, müsste nun einer Variablen zugewiesen werden.
Du solltest auch mal überlegen ob Bash am Terminal so unbedingt sein muss.
Es gibt sicher einige gute Shells aber Bash gehört nicht unbedeint dazu.
Wenn schon Shells dann csh oder zsh. Für deine Aufgabe würde ich
Dir jedoch eher Perl empfehlen. Es ist meist vorhanden und für
solche Sachen prädestiniert und kann via API direkt mit der DB
sprechen (anstatt nur den DB Clienten zu wrappen) ;D
Das Perl in solchen Fällen der Shell vorzuziehen ist stimmt natürlich. Werde es mir nochmal überlegen ob ich das Tool besser auf Perl umschreiben werde. Es sind halt nur wenige Interoperationen die das System mit der DB führt. Der Rest besteht aus Shell Scripten die Tasks auf dem System ausführen.
Kann mir jemand ein Tutorial für Perl und PGSQL empfehlen?
Die Frage ist natürlich auch, ob es Sinn macht, sich extra für ein Skript in Perl einzuarbeiten? Was ist dann in einem halben Jahr, wenn es was zu warten gibt? Bei Shell-Skripten weißt Du dann, wenn Du das öfters machst, was zu tun ist. Bei Perl musst Du dich dann wahrscheinlich erst wieder einarbeiten.
Habe schon früher mit Perl ein wenig gearbeitet. Kenne es noch aus der Zeit wo CGI verwendet wurde weil es noch kein PHP gab. Allerdings ist nicht mehr viel vom Wissen übrig würde mich aber gerne wieder etwas in perl einarbeiten.
Wenn jemandem auf die Schnelle ein aktuelles Tutorial für Perl einfällt wo auch etwas PGSQL drin vorkommt einfach mal posten.