SQL-Abfrage auf Konsole

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ddd123
Beiträge: 20
Registriert: 13.10.2006 16:19:45

SQL-Abfrage auf Konsole

Beitrag von ddd123 » 17.10.2006 09:50:56

Hi,

ich habe folgendes Problem. Ich moechte so was wie

"select * from Tabelle" >> text.txt

mit einer Oracle 9 DB auf der Linux-Konsole ausfuehren. Hintergrund, ich will es in verschiedenen Skripten benutzen. Kennt jemand den passenden Aufruf?

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 17.10.2006 09:57:31

Hm, gibts bei Oracle nicht einen Kommandozeilen-Client, ueber den man das machen kann?

ddd123
Beiträge: 20
Registriert: 13.10.2006 16:19:45

Beitrag von ddd123 » 17.10.2006 10:00:11

Gute Frage. :? Wenn ja, wie heisst der und hast du dann auch ein Beispiel fuer die Kommandozeile?

Benutzeravatar
hupfdule
Beiträge: 1864
Registriert: 09.12.2002 15:04:37
Wohnort: Berlin
Kontaktdaten:

Beitrag von hupfdule » 17.10.2006 10:03:52

sqlplus heißt der. Ob du damit so ohne Weiteres in eine Datei schreiben kannst, weiß ich allerdings nicht. Das ist ist nicht grad der Brüller.

ddd123
Beiträge: 20
Registriert: 13.10.2006 16:19:45

Beitrag von ddd123 » 17.10.2006 10:31:48

wehm sagst du das, ich weiss! :lol:

Benutzeravatar
Bert
Beiträge: 3751
Registriert: 16.07.2002 14:06:52
Wohnort: Dresden
Kontaktdaten:

Beitrag von Bert » 17.10.2006 12:52:19

Solange man nicht sqlplusw verwendet, gets ja noch. Toll ist es allerdings nicht.

Zur Frage:
Ein sql script anlegen, dort mit spool <dateiname> spooling aktivieren, am ende mit spool off wieder deaktivieren. Also in etwas so:

Code: Alles auswählen

set heading off
set linesize 500
spool out.txt;
select * from table;
spool off
exit;
es gibt noch weitere Parameter, die man setzen kann. Einfach mal nach "sqlplus line width" google.

Aufrufen kannst Du das Script dann per

Code: Alles auswählen

sqlplus user/passwd@datenbank @scriptname
Hoffe geholfen zu haben.

Gruß Bert
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de

Benutzeravatar
puddlejumper
Beiträge: 58
Registriert: 22.01.2005 00:29:52

Beitrag von puddlejumper » 17.10.2006 13:44:12

Hi,

wenn, mach ich's eigentlich meistens folgendermaßen

Code: Alles auswählen

{
sqlplus bla/blubber@otx <<EOF
select table_name from all_tables;
EOF
} >> output.txt
Gruß,
puddlejumper.

P.S.: Problem bei der Art von Aufruf von sqlplus ist halt nur, dass Du das Passwort in der Prozessliste sehen kannst... (sollte man dabei bedenken!)

Edit by Snoopy:
Tags für die Leserlichkeit eingefügt.

ddd123
Beiträge: 20
Registriert: 13.10.2006 16:19:45

Beitrag von ddd123 » 18.10.2006 14:10:18

Hi an Alle,

danke fuer die schnelle Antwort, werd ich morgen gleich mal probieren.

:D

Antworten