Heim >Datenbank >MySQL-Tutorial >Allgemeine SQL*Plus-Befehle

Allgemeine SQL*Plus-Befehle

大家讲道理
大家讲道理Original
2016-11-10 11:44:281213Durchsuche

1. So verknüpfen Sie die Datenbank
Vom Betriebssystem überprüft:

SQL>conn / as sysdba

Von der Datenbank überprüft
SQL>CONN username/password @databaseIdentified AS sysdba

databaseIdentified ist die Link-ID, die nichts mit der Datenbank zu tun hat und sein kann frei benannt.
Auf AS folgt die Rolle
2. So führen Sie eine SQL-Skriptdatei aus
SQL>start file_name 
SQL>@ file_name
Wir können mehrere SQL-Anweisungen in einer Textdatei speichern. Wenn wir also alle SQL-Anweisungen in dieser Datei ausführen möchten, verwenden Sie „Any“. Einer der oben genannten Befehle reicht aus, was der Stapelverarbeitung unter DOS ähnelt.

3. Führen Sie die letzte SQL-Anweisung erneut aus
SQL> run


4. Geben Sie den angezeigten Inhalt in die angegebene Datei aus
SQL> SPOOL file_name

Der gesamte Inhalt auf dem Bildschirm ist enthalten. Diese Datei enthält die SQL Anweisung, die Sie eingegeben haben.

5. Spool-Ausgabe ausschalten
SQL> SPOOL OFF

Nur ​​wenn Sie die Spool-Ausgabe ausschalten, sehen Sie den Ausgabeinhalt in der Ausgabedatei.

6. Zeigen Sie die Struktur einer Tabelle an
SQL> desc table_name


7. COL-Befehl:
Ich verwende die Formatierungsmethode
COL columnname format a20


Ändern Sie die Standardspaltenüberschriften
COLUMN column_name HEADING column_heading 
For example: 
Sql>select * from dept; 
DEPTNO DNAME LOC
--- --- ---- ------------- ----------
10 BUCHHALTUNG NEW YORK
sql>col LOC heading location 
sql>select * from dept; 
DEPTNO DNAME location
--------- ------------- ---------- - -
10 ACCOUNTING NEW YORK
8. Set-Befehl:
Ich verwende im Allgemeinen
set linesize 1000
set wrap off
Wenn die Länge der SQL-Anweisung größer als LINESIZE ist, ob SQL-Anweisungen beim Anzeigen abfangen.
SQL> SET WRA[P] {ON|OFF}

Wenn die Länge der Ausgabezeile größer ist als die Länge der festgelegten Zeile (festgelegt mit dem Befehl „set linesize n“) und der Zeilenumbruch aktiviert ist, werden die überschüssigen Zeichen in der Ausgabezeile in einer anderen Zeile angezeigt Andernfalls werden überschüssige Zeichen aus der Ausgabezeile abgeschnitten und nicht angezeigt.
9. Ändern Sie die erste Zeichenfolge, die in der aktuellen Zeile im SQL-Puffer
C[HANGE] /old_value/new_value 
SQL> l 
1* select * from dept 
SQL> c/dept/emp 
1* select * from emp
10 erscheint. Zeigt die SQL-Anweisung im SQL-Puffer an, Liste n zeigt die n-te Zeile im SQL-Puffer an und macht die n-te Zeile zur aktuellen Zeile
L[IST] [n]


10. Fügen Sie eine oder mehrere Zeilen unterhalb der aktuellen Zeile des SQL-Puffers hinzu
I[NPUT]


11. Fügen Sie den angegebenen Text am Ende der aktuellen Zeile des SQL-Puffers hinzu
A[PPEND] 
SQL> select deptno, 
2 dname 
3 from dept; 
DEPTNO DNAME
---------- --------------
10 ACCOUNTING 
20 RESEARCH 
30 SALES 
40 OPERATIONS 
 
SQL> L 2 
2* dname 
SQL> a ,loc 
2* dname,loc 
SQL> L 
1 select deptno, 
2 dname,loc 
3* from dept 
SQL> / 
 
DEPTNO DNAME LOC 
---------- -------------- ------------- 
10 ACCOUNTING NEW YORK 
20 RESEARCH DALLAS 
30 SALES CHICAGO 
40 OPERATIONS BOSTON
12. Führen Sie die gerade ausgeführte SQL-Anweisung erneut aus
RUN 
or
/
13. Führen Sie eine gespeicherte Prozedur aus
EXECUTE procedure_name

14. Hilfe für SQL*Plus-Befehl anzeigen
HELP

15. Zeigt den Wert der SQL*Plus-Systemvariablen oder den Wert der SQL*Plus-Umgebungsvariablen an
Syntax 
SHO[W] option
1). Zeigt den Wert der aktuellen Umgebungsvariablen an:
Show all

2). gespeicherte Prozeduren, Trigger, Fehlermeldungen für Objekte wie Pakete
Show error

Wenn beim Erstellen einer Funktion, gespeicherten Prozedur usw. ein Fehler auftritt, können Sie mit diesem Befehl überprüfen, wo der Fehler aufgetreten ist und die entsprechende Fehlermeldung anzeigen. Nehmen Sie Änderungen vor und kompilieren Sie erneut.
3) . Den Wert des Initialisierungsparameters anzeigen:
show PARAMETERS [parameter_name]

4) . Die Datenbankversion anzeigen:
show REL[EASE]

5) . Die Größe von SGA anzeigen
show SGA

6) Aktuellen Benutzernamen anzeigen
show user



************************************** ** ******
ORA-00054: Ressource ausgelastet und mit NOWAIT-Angabe erfasst
Symptome:
„locked_mode“ ist 2,3,4, wirkt sich nicht auf DML aus (Einfügen, Löschen, Aktualisieren, Auswählen) Operationen,
Aber DDL-Operationen (Ändern, Löschen usw.) führen zu einem ora-00054-Fehler.   
  Wenn Primär- und Fremdschlüsselbeschränkungen vorliegen, kann das Aktualisieren/Löschen ... 4,5 Sperren generieren.
Die DDL-Anweisung hat eine Sperre von 6.
Verarbeitungsmethode:
Als DBA können Sie die folgende SQL-Anweisung verwenden, um den Sperrstatus in der aktuellen Datenbank zu überprüfen:
select object_id,session_id,locked_mode from v$locked_object
or select t2 .username,t2 .sid,t2.serial#,t2.logon_time
 from v$locked_object t1,v$session t2
 where t1.session_id=t2.sid order by t2.logon_time;
 If there Wenn es sich um eine Spalte handelt, die über einen längeren Zeitraum angezeigt wird, kann es sein, dass die Sperre nicht aufgehoben wurde.
Wir können die folgende SQL-Anweisung verwenden, um abnormale Sperren zu beenden, die schon lange nicht mehr freigegeben wurden:
alter system kill session 'sid,serial#'
Endlich zum Normalzustand zurückkehren

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn