🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.bazy-danych
4 messages
4 total messages Started by goo-mlyny@ciach. Thu, 28 Feb 2019 04:13
oracle 11 - wynik do pliku csv
#188647
Author: goo-mlyny@ciach.
Date: Thu, 28 Feb 2019 04:13
9 lines
365 bytes
Czy jest jakiś sposób, żeby wynik zapytania zapisać do pliku CSV - ale w taki najprostszy sposób, bez żadnego formatowania, bez uzupełniania pól spacjami, bez wyszczególniania pól w select itp.?
Czyli np. taki SQL: "select * from tabela" da mi plik:

kolumna1,kolumna2,kolumna3
wartosc1,123,qwe
wart2,432,poi
Re: oracle 11 - wynik do pliku csv
#188649
Author: goo-mlyny@ciach.
Date: Thu, 28 Feb 2019 05:44
26 lines
1535 bytes
W dniu czwartek, 28 lutego 2019 14:04:22 UTC+1 użytkownik geos napisał:
> i tak, i nie. select zwróci wyniki do programu klienta, ale aby to 
> poleciało do pliku to zależy od ustawień. niektóre mają opcję 
> eksportowania jako jedną z funkcjonalności. w sqlplus możesz SQLa 
> "obudować" poleceniami sqlplus i wtedy wynik zapytania wyląduje w pliku. 
nie dopisałem - ale chciałbym to zrobić w ramach skryptu uruchamianego przez sqlplus wprost na serwerze
> pierwszy lepszy przykład z internetów jak to zrobić:
> https://chartio.com/resources/tutorials/how-to-write-to-a-csv-file-using-oracle-sql-plus/

Przed opublikowaniem pytania sprawdziłem kilkanaście "pierwszych lepszych przykładów z internetu" ;-) Żaden nie dał oczekiwanego przeze mnie rezultatu. Np. wszystkie sprawdzone przeze mnie sposoby dawały wyniki w kolumnach o stałym rozmiarze, czyli krótsze wartości były uzupełniane spacjami. Czytelnie to wygląda przy podglądzie, ale tego nie chcę. Zdarzało się, że np. nazwy kolumn były skracane itp. itd.
Zadałem tu pytanie, bo wydawało mi się, że taka dosyć elementarna czynność powinna być łatwo osiągalna a tylko ja nie umiem znaleźć rozwiązania. Ale chyba w Oracle 11 tak nie jest... W Oracle 12 chyba jest, no ale mam 11 :)
Re: oracle 11 - wynik do pliku csv
#188648
Author: geos
Date: Thu, 28 Feb 2019 14:04
18 lines
805 bytes
On 28.02.2019 13:13, goo-mlyny@ciach.net wrote:
> Czy jest jaki¶ sposób, ¿eby wynik zapytania zapisaæ do pliku CSV - ale w taki najprostszy sposób, bez ¿adnego formatowania, bez uzupe³niania pól spacjami, bez wyszczególniania pól w select itp.?
> Czyli np. taki SQL: "select * from tabela" da mi plik:
>
> kolumna1,kolumna2,kolumna3
> wartosc1,123,qwe
> wart2,432,poi
>

i tak, i nie. select zwróci wyniki do programu klienta, ale aby to
polecia³o do pliku to zale¿y od ustawieñ. niektóre maj± opcjê
eksportowania jako jedn± z funkcjonalno¶ci. w sqlplus mo¿esz SQLa
"obudowaæ" poleceniami sqlplus i wtedy wynik zapytania wyl±duje w pliku.
pierwszy lepszy przyk³ad z internetów jak to zrobiæ:

https://chartio.com/resources/tutorials/how-to-write-to-a-csv-file-using-oracle-sql-plus/

pozdrawiam
geos
Re: oracle 11 - wynik do pliku csv
#188653
Author: Paulina
Date: Mon, 05 Aug 2019 02:49
37 lines
2155 bytes
W dniu czwartek, 28 lutego 2019 14:44:04 UTC+1 użytkownik goo-...@ciach.net napisał:
> W dniu czwartek, 28 lutego 2019 14:04:22 UTC+1 użytkownik geos napisał:
> > i tak, i nie. select zwróci wyniki do programu klienta, ale aby to 
> > poleciało do pliku to zależy od ustawień. niektóre mają opcję 
> > eksportowania jako jedną z funkcjonalności. w sqlplus możesz SQLa 
> > "obudować" poleceniami sqlplus i wtedy wynik zapytania wyląduje w pliku. 
> nie dopisałem - ale chciałbym to zrobić w ramach skryptu uruchamianego przez sqlplus wprost na serwerze
> > pierwszy lepszy przykład z internetów jak to zrobić:
> > https://chartio.com/resources/tutorials/how-to-write-to-a-csv-file-using-oracle-sql-plus/
> 
> Przed opublikowaniem pytania sprawdziłem kilkanaście "pierwszych lepszych przykładów z internetu" ;-) Żaden nie dał oczekiwanego przeze mnie rezultatu. Np. wszystkie sprawdzone przeze mnie sposoby dawały wyniki w kolumnach o stałym rozmiarze, czyli krótsze wartości były uzupełniane spacjami. Czytelnie to wygląda przy podglądzie, ale tego nie chcę. Zdarzało się, że np. nazwy kolumn były skracane itp. itd.
> Zadałem tu pytanie, bo wydawało mi się, że taka dosyć elementarna czynność powinna być łatwo osiągalna a tylko ja nie umiem znaleźć rozwiązania. Ale chyba w Oracle 11 tak nie jest... W Oracle 12 chyba jest, no ale mam 11 :)

Wątek już stary, ale może na przyszłośc komuś się przyda. 
Zamiast sqlplusa mozna zainstalować innego klienta - SQLcl. Jest to niewielkie oprogramowanie, wymaga javy jedynie, a działa jak sqlplus, no i ma dodatkowe "ficzery" jak formatowanie wyników zapytania w postaci csv, html etc. Warto się przyjrzeć - tu ładnie opisane
https://oracle-base.com/articles/misc/sqlcl-format-query-results-with-the-set-sqlformat-command
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads