Verbindung zur DB Mit SQLPlus aufbauen

>sqlplus user/passwort@dbname

 


SPOOL

Das Komando Spool schreibt den Output der SQL Sitzung in eine Datei.


Starten:
spool log.txt;

Beenden:
spool off;

Anhängen (und starten):
spool log.txt append;

 

 


Ausgabe ohne Überschrift und Leerzeilen

Wenn mehrere SQL Statements aus einer Datei ausgeführt werden sollen, werden diese standardmäßig eine Überschrift enthalten.

Zudem werden zwischen den Ergebnissen Leerzeilen auftauchen, die in den meisten Fällen eher lästig sind.

Folgende Einstellungen können hier Abhilfe schaffen:

1. set pagesize 0 // Gibt an, nach wievielen Ausgabezeilen eine erneute Überschrift ausgegeben werden soll

2. set heading off // Schaltet die Überschrift aus

3. set linesize 9000 // Nach wievielen Zeichen der Zeile ein Zeilenumbruch erfolgen soll

4. set feed off // entfernt die Zeile nach einem Aufruf, damit sind die Leerzeilen entfernt

 

 


Describe

Dieser Befehl wird verwendet, um sich eine Tabellenbeschreibung anzeigen zu lassen.

Das Ergebnis dieser Abfrage liefert eine Tabelle mit 3 Spalten. Erste Spalte (Name) beinhalted die Spaltennamen der Tabelle.
Die zweite Spalte heist NULL? und gibt an, ob der Wert der Spalte NULL sein darf.
Die dritte Spalte (Type) gibt an, welchen Datentyp die Spalte haben darf.

DESCRIBE tabelle1
oder
DESC tabelle1


Name

Null?

Type

Spalte1

NOT NULL

NUMBER(4)

Spalte2

VARCHAR2(10)

Spalte3

DATE




Befehle zur Bufferbearbeitung

Mit SQL Plus ist es möglich, SQL Befehle die sich bereits im Buffer befinden, zu bearbeiten.
Die eckigen Klammern zeigen an, wie die Befehle abgekürzt werden können.

A[PPEND] text

Angenommen im Buffer steht bereits "SELECT spalte1, spalte2,". Jetzt geben folgende Zeile ein:

A spalte3

Nun befindet sich folgende Anweisung im Buffer:

SELECT spalte1, spalte2, spalte3

C[HANGE] /old/new

Führen wir jetzt einen Change aus:

C/spalte3/spalte4

... steht folgende SQL ANweisung im Buffer:

SELECT spalte1, spalte2, spalte4

Des Weiteren können Sie mit dem Befehl etwas aus dem Buffer löschen:

C/spalte2,/

... lässt folgendes übrig:

SELECT spalte1,  spalte4

 

CL[EAR] BUFF[ER]

Dieser Befehl löscht alle Zeilen im Buffer.

DEL

Mit DEL wird der Inhalt des Buffers gelöscht. Gibt man hinter DEL die Zeile oder Zeilen an, so werden nur diese gelöscht.

DEL 2

I[NPUT] text

Mit Input lässt sich eine unbestimmte Anzahl von Zeilen in den Buffer eingeben:

I FROM tabelle1

Aktuell im Buffer:

SELECT spalte1,  spalte4
FROM tabelle1

 

L[IST]

Ermöglicht das Anzeigen vom Inhalt des Buffers. Hierzu mus lediglich der Buchstabe "L" und Enter eingegeben weden.

R[UN]

Hiermit wird die aktuelle Anweisung im Buffer ausgeführt. Daraufhin wird die Anweisung ausgeführt, und die Anweisung, sowie das Ergebnis auf dem Bildschirm ausgegeben.

 

 


Zeilen im Buffer bearbeiten

Um zum Beispiel eine Zeile austauschen zu können, geben Sie die Zeilennummer, und dann den neuen Inhalt der Zeile ein:

Vorher:
SELECT sp1, sp2
FROM tab1

Anweisung:
1 SELECT sp2, sp4

Jetzt im Buffer:
SELECT sp2, sp4
FROM tab1

Um etwas vor die erste Zeile im Buffer zu schreiben, wechseln sie in die Zeile 0.


Dateibefehle

Häufig verwendete Dateibefehle:

SAV[E] Dateiname

Mit der Anweisung SAVE, wird die im Buffer befindliche SQL Anweisung in eine Datei gespeichert.
Bei der Vergabe des Dateinamens wird keine Dateierweiterung benötigt, da .sql automatisch angehängt wird.

SAV alles_von_tabelle1

Daraufhin erscheint eine Meldung, dass die Datei angelegt wurde:
Created file alles_von_tabelle1

 

GET Dateiname

Mit GET wird der aktuelle Buffer mit dem Inhalt aus der angegebenen Date ersetzt:

GET alles_von_tabelle1

Daraufhin wird der Inhalt der Datei angezeigt und in den Buffer geladen.

 

STAR[T] Dateiname

Start wird verwendet, um den Inhalt einer Datei einfach nur ausführen zu lassen.

STAR alles_von_tabelle1

Somit werden die SQL Statements der Datei ausgeführt, und sie bekommen das Ergebnis angezeigt.
Eine zuvor verwendete Datei kann auch auf kürzerem Weg wieder aufgerufen werden:

@ alles_von_tabelle1

 

ED[IT] Dateiname

Mit dem Befehl EDIT können sie direkt die Datei in den Editor laden:

ED alles_von_tabelle1

 

EXIT

Mit EXIT verlassen sie die SQL Plus Umgebung.