Auf dieser Seite werden die von der Spanner-Befehlszeile unterstützten Befehle zusammengefasst.
| Befehlssyntax | Beschreibung |
|---|---|
SHOW DATABASES;
|
Datenbanken auflisten. |
USE
|
Datenbank wechseln Die von Ihnen festgelegte Rolle wird für die detaillierte Zugriffssteuerung verwendet. |
CREATE DATABASE
|
Datenbank erstellen |
DROP DATABASE
|
Löschen Sie die Datenbank. |
SHOW TABLES [
|
Tabellen auflisten Wenn Sie kein Schema angeben, verwendet Spanner das Standardschema. |
SHOW CREATE TABLE
|
Tabellenschema anzeigen |
SHOW COLUMNS FROM
|
Spalten einblenden |
SHOW INDEX FROM
|
Indexe anzeigen |
CREATE TABLE ...;
|
Tabelle erstellen. |
ALTER TABLE ...;
|
Ändern Sie das Tabellenschema. |
DROP TABLE ...;
|
Tabelle löschen |
TRUNCATE TABLE
|
Tabelle kürzen Löschen Sie nur Zeilen. Dieser Befehl ist nicht atomar, da er als partitionierte DML-Anweisung ausgeführt wird. |
CREATE INDEX ...;
|
Index erstellen |
DROP INDEX ...;
|
Index löschen. |
CREATE ROLE ...;
|
Rolle erstellen. Weitere Informationen finden Sie in der IAM-Übersicht für Spanner. |
DROP ROLE ...;
|
Rolle löschen |
GRANT ...;
|
Weisen Sie einer Rolle eine Berechtigung zu. |
REVOKE ...;
|
Berechtigung für eine Rolle widerrufen |
SELECT ...;
|
Abfrage ausführen |
{ INSERT|UPDATE|DELETE } ...;
|
Führen Sie eine DML-Anweisung aus. |
PARTITIONED { UPDATE|DELETE } ...;
|
Eine partitionierte DML-Anweisung ausführen Dieser Befehl ist nicht atomar. |
EXPLAIN SELECT ...;
|
Einen Abfrageausführungsplan anzeigen. Weitere Informationen finden Sie unter Abfrage-Ausführungspläne. |
EXPLAIN {INSERT|UPDATE|DELETE} ...;
|
DML-Ausführungsplan anzeigen |
EXPLAIN ANALYZE SELECT ...;
|
Zeigt den Abfrageausführungsplan mit Optimierungsstatistiken an. Weitere Informationen finden Sie unter Optimizer-Statistikpakete. |
EXPLAIN ANALYZE {INSERT|UPDATE|DELETE} ...;
|
Zeigt den DML-Ausführungsplan mit Statistiken des Optimierungstools an. Weitere Informationen finden Sie unter Optimizer-Statistikpakete. |
DESCRIBE SELECT ...;
|
Form des Abfrageergebnisses anzeigen. |
DESCRIBE {INSERT|UPDATE|DELETE} ... THEN RETURN ...;
|
Form des DML-Ergebnisses anzeigen. |
ANALYZE;
|
Beginnt mit der Erstellung eines neuen Statistikpakets für das Abfrageoptimierungstool. |
START BATCH DDL;
|
Starten Sie einen DDL-Batch. |
RUN BATCH;
|
Batchbefehle ausführen |
ABORT BATCH;
|
Batchbefehle abbrechen |
BEGIN [RW] [ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}]
[PRIORITY {HIGH|MEDIUM|LOW}] [TAG
|
Starten Sie eine Lese-Schreib-Transaktion. Weitere Informationen finden Sie unter Transaktionsbefehle. |
COMMIT;
|
Führen Sie ein Commit einer Lese-Schreib-Transaktion durch. |
ROLLBACK;
|
Rollback (Rückgängigmachen) einer Lese-Schreib-Transaktion |
BEGIN RO [{
|
Starten Sie eine schreibgeschützte Transaktion. seconds und RFC 3339-formatted_time werden für veraltete Lesevorgänge verwendet. Weitere Informationen finden Sie unter Transaktionsbefehle. |
CLOSE;
|
Schreibgeschützte Transaktion beenden |
EXIT;
|
Beenden Sie die Spanner-Befehlszeile. |
BATCH-Befehle
Mit der Spanner CLI können Sie DDL-Vorgänge im Batchmodus ausführen. Dabei werden mehrere DDL-Anweisungen in einem einzigen Vorgang gruppiert, was Schemaänderungen beschleunigt.
Die Spanner-Befehlszeile unterstützt die folgenden BATCH-Befehle:
START BATCH DDL;
Mit diesem Befehl wird ein DDL-Batch initiiert. Alle nachfolgenden DDL-Anweisungen (z. B. CREATE TABLE, ALTER TABLE, DROP INDEX), die Sie in dieser Sitzung ausführen, bleiben im Status „Ausstehend“ und werden nicht sofort auf die Datenbank angewendet.
RUN BATCH;
Nachdem Sie START BATCH DDL und die nachfolgenden DDL-Anweisungen ausgeführt haben, verwenden Sie den Befehl RUN
BATCH, um alle ausstehenden DDL-Vorgänge als einzelne Anfrage an Spanner zu senden. Dieser Befehl reduziert den Overhead, der mit einzelnen DDL-Anweisungen verbunden ist, was zu schnelleren Schemaänderungen führt.
ABORT BATCH;
Wenn Sie die ausstehenden DDL-Änderungen nicht anwenden möchten, verwenden Sie den Befehl ABORT BATCH. Mit diesem Befehl werden alle DDL-Anweisungen verworfen, die seit dem Ausführen des Befehls START BATCH DDL erfasst wurden. Dadurch wird der Batch effektiv zurückgesetzt und das Datenbankschema bleibt unverändert.
Transaktionsbefehle
Die Spanner-Befehlszeile unterstützt die folgenden SQL-Befehle für Transaktionen:
BEGIN [TRANSACTION] [RO] [seconds|RFC 3339-formatted_time ]
[ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}]
[PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name];
Starten Sie eine Transaktion. Sie können folgende Optionen konfigurieren:
- Transaktionstyp: Starten Sie eine Lese-/Schreibtransaktion (kein Parameter erforderlich) oder eine schreibgeschützte Transaktion (
RO). - Zeit für veraltete Lesevorgänge: Legen Sie die Zeit in Sekunden oder im RFC 3339-Format fest, um Daten ab einem bestimmten Zeitstempel zu lesen.
- Isolationsebene: Legen Sie die Isolationsebene für Lese-/Schreibtransaktionen fest. Standardmäßig wird die serialisierbare Isolation verwendet. Weitere Informationen finden Sie unter Übersicht über Isolierungsstufen.
- Priorität: Legen Sie die Anfragepriorität für die Transaktion fest. Die mittlere Priorität ist standardmäßig festgelegt.
Tag: Legen Sie Transaktionstags mit dem Befehl
BEGINfest.- Fügen Sie in einer Lese-/Schreibtransaktion ein Tag mit
BEGIN TAG taghinzu. Die Spanner CLI fügt das Tag als Transaktions-Tag hinzu. Das Tag wird auch als Anfrage-Tag innerhalb der Transaktion verwendet. - Fügen Sie in einer schreibgeschützten Transaktion ein Tag mit
BEGIN RO TAG taghinzu. Da schreibgeschützte Transaktionen keine Transaktions-Tags unterstützen, fügt Spanner das Tag als Anfrage-Tag hinzu.
- Fügen Sie in einer Lese-/Schreibtransaktion ein Tag mit
COMMIT;
Schließen Sie alle Änderungen in einer Lese-/Schreibtransaktion ab und machen Sie sie dauerhaft.
CLOSE;
Schließen Sie eine schreibgeschützte Transaktion.
ROLLBACK;
Rollback (Rückgängigmachen) einer Lese-Schreib-Transaktion