PostgreSQL exportieren großes Objekt zum client
Ich habe eine PostgreSQL-9.1 Datenbank, in der Bilder gespeichert sind, als große Objekte.
Gibt es eine Möglichkeit zum exportieren der Dateien an die clients Dateisystem durch eine SQL-Abfrage?
select lo_export(data,'c:\img\test.jpg') from images where id=0;
Ich bin auf der Suche nach einer Art und Weise ähnlich zu der Zeile oben, sondern mit dem Kunden als Ziel.
Vielen Dank im Voraus!
InformationsquelleAutor Herr von Wurst | 2012-01-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
diese Antwort ist sehr spät aber hilfreich sein, so einige ein, ich bin sicher, dass
Bekommen die Bilder aus dem server der client-system Sie können diese
Wo
die Dokumentation ist hier commandprompt.com
InformationsquelleAutor PresleyDias
Georg,
Entsprechend der Dokumentation 9.1, lo_export ist relativ zu dem client ausführen der Anruf. Also, wenn clientA verbunden ist databaseB, wenn clientA führt Ihre SQL -, lo_export sollten die Datei auf clientA, wo Sie gesagt haben, es.
In Anbetracht der Tatsache, dass Sie erklärt habe, Ihr unter Verwendung von JDBC unter MATLAB (ich bin nicht vertraut mit was Sie tun können, unter dort, noch bin ich vertraut mit der Schnittstelle zum ausführen der Anruf), wenn Sie fordern, diese aus einer JDBC-Verbindung manuell:
Ich gespielt habe, sehr Locker und schnell mit der JDBC-Operationen für die Kürze hier. Es sollten mehr werden Fehler überprüfen sowie try/catch/finally-Anweisungen zum wickeln und säubern Sie die Anschlüsse.
Datei kopieren Beispiel.
Kein problem. Wenn dies dein problem gelöst hat, bitte markieren Sie diese Antwort als akzeptiert.
Leider nicht, ich bin neu auf Stackoverflow so gut und übermittelt die Antwort, bevor durch drücken der EINGABETASTE, wenn alle, die ich wollte, war ein Zeilenumbruch. 😀
Wie werden Sie die Verbindung zu der Instanz? Mit psql?
AH HA!!! ok, ich sehe, was du versuchst zu tun
InformationsquelleAutor Dave G
Es ist nicht möglich, weil alle PostgreSQL-server tun kann, ist, zurück senden von Daten an den client über das Netzwerk Verbindung, die der client aufgebaut hat.
Insbesondere kann es nicht schaffen eine Datei auf dem client-Dateisystem, nur mit dem client-code tun.
\lo_export lo_oid filename The large object export command; this lets you export the large object with OID lo_oid to filename on your local filesystem. This is different from the lo_export() server function in the same way the \copy and the SQL COPY commands are different.
von commandprompt.com/ppbook/c12119Die Frage sagt "Trog eine SQL-Abfrage" und \lo_export ist nicht eine SQL-Abfrage, noch kann ein Teil einer SQL-Abfrage. Es ist ein interner Befehl des psql-client-Programm.
Oh, ok, ich nicht denke, dass
InformationsquelleAutor Daniel Vérité
Quelle: http://www.postgresql.org/docs/8.4/static/lo-funcs.html
InformationsquelleAutor Andre Valdestilhas