En esta página, se resumen los comandos compatibles con la CLI de Spanner.
| Sintaxis del comando | Descripción |
|---|---|
SHOW DATABASES;
|
Crear una lista de bases de datos |
USE
|
Cambiar de base de datos El rol que establezcas se usará para el control de acceso detallado. |
CREATE DATABASE
|
Crea la base de datos. |
DROP DATABASE
|
Borra la base de datos. |
SHOW TABLES [
|
Enumera tablas. Si no proporcionas un esquema, Spanner usa el esquema predeterminado. |
SHOW CREATE TABLE
|
Mostrar el esquema de la tabla |
SHOW COLUMNS FROM
|
Mostrar columnas |
SHOW INDEX FROM
|
Mostrar índices |
CREATE TABLE ...;
|
Crear tabla. |
ALTER TABLE ...;
|
Cambia el esquema de la tabla. |
DROP TABLE ...;
|
Borra la tabla. |
TRUNCATE TABLE
|
Trunca la tabla. Solo se borran filas. Este comando no es atómico porque se ejecuta como una declaración DML particionada. |
CREATE INDEX ...;
|
Crea el índice. |
DROP INDEX ...;
|
Borra el índice. |
CREATE ROLE ...;
|
Crea un rol. Para obtener más información, consulta la descripción general de IAM de Spanner. |
DROP ROLE ...;
|
Borra el rol. |
GRANT ...;
|
Otorga permiso a un rol. |
REVOKE ...;
|
Revoca el permiso de un rol. |
SELECT ...;
|
Ejecutar una consulta |
{ INSERT|UPDATE|DELETE } ...;
|
Ejecuta una declaración DML. |
PARTITIONED { UPDATE|DELETE } ...;
|
Ejecuta una declaración DML particionada. Este comando no es atómico. |
EXPLAIN SELECT ...;
|
Muestra un plan de ejecución de consultas. Para obtener más información, consulta Planes de ejecución de consultas. |
EXPLAIN {INSERT|UPDATE|DELETE} ...;
|
Muestra el plan de ejecución del DML. |
EXPLAIN ANALYZE SELECT ...;
|
Muestra el plan de ejecución de consultas con estadísticas del optimizador. Para obtener más información, consulta Paquetes de estadísticas del optimizador. |
EXPLAIN ANALYZE {INSERT|UPDATE|DELETE} ...;
|
Muestra el plan de ejecución del DML con estadísticas del optimizador. Para obtener más información, consulta Paquetes de estadísticas del optimizador. |
DESCRIBE SELECT ...;
|
Muestra la forma del resultado de la consulta. |
DESCRIBE {INSERT|UPDATE|DELETE} ... THEN RETURN ...;
|
Muestra la forma del resultado del DML. |
ANALYZE;
|
Comienza la construcción de un nuevo paquete de estadísticas del optimizador de consultas. |
START BATCH DDL;
|
Inicia un lote de DDL. |
RUN BATCH;
|
Ejecutar comandos por lotes |
ABORT BATCH;
|
Abortar comandos por lotes |
BEGIN [RW] [ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}]
[PRIORITY {HIGH|MEDIUM|LOW}] [TAG
|
Inicia una transacción de lectura y escritura. Para obtener más información, consulta Comandos de transacción. |
COMMIT;
|
Confirma una transacción de lectura y escritura. |
ROLLBACK;
|
Revierte (deshace) una transacción de lectura y escritura. |
BEGIN RO [{
|
Inicia una transacción de solo lectura. seconds y RFC 3339-formatted_time se usan para las lecturas inactivas. Para obtener más información, consulta Comandos de transacción. |
CLOSE;
|
Finaliza una transacción de solo lectura. |
EXIT;
|
Sal de la CLI de Spanner. |
Comandos BATCH
La CLI de Spanner te permite realizar operaciones DDL en modo de lote, lo que agrupa varias instrucciones DDL en una sola operación y acelera los cambios de esquema.
La CLI de Spanner admite los siguientes comandos BATCH:
START BATCH DDL;
Este comando inicia un lote de DDL. Todas las instrucciones DDL posteriores (por ejemplo, CREATE TABLE, ALTER TABLE, DROP INDEX) que ejecutes en esta sesión permanecerán en estado pendiente y no se aplicarán a la base de datos de inmediato.
RUN BATCH;
Después de ejecutar START BATCH DDL y las instrucciones DDL posteriores, usa el comando RUN
BATCH para enviar todas las operaciones DDL pendientes como una sola solicitud a Spanner. Este comando reduce la sobrecarga asociada con las instrucciones DDL individuales, lo que permite realizar modificaciones de esquemas más rápidas.
ABORT BATCH;
Si decides no aplicar los cambios de DDL pendientes, usa el comando ABORT BATCH. Este comando descarta todas las sentencias DDL recopiladas desde que ejecutaste el comando START BATCH DDL, lo que revierte el lote y deja el esquema de la base de datos sin cambios.
Comandos de transacción
La CLI de Spanner admite los siguientes comandos SQL de transacción:
BEGIN [TRANSACTION] [RO] [seconds|RFC 3339-formatted_time ]
[ISOLATION LEVEL {SERIALIZABLE|REPEATABLE READ}]
[PRIORITY {HIGH|MEDIUM|LOW}] [TAG tag_name];
Inicia una transacción. Puedes configurar las siguientes opciones:
- Tipo de transacción: Inicia una transacción de lectura y escritura (no se necesita ningún parámetro) o de solo lectura (
RO). - Tiempo de lecturas obsoletas: Establece el tiempo, en segundos o con formato RFC 3339, para leer datos desde una marca de tiempo específica.
- Nivel de aislamiento: Establece el nivel de aislamiento para las transacciones de lectura y escritura. De forma predeterminada, se usa el aislamiento serializable. Para obtener más información, consulta la Descripción general de los niveles de aislamiento.
- Prioridad: Establece la prioridad de la solicitud para la transacción. La prioridad media se establece de forma predeterminada.
Etiqueta: Establece etiquetas de transacción con el comando
BEGIN.- En una transacción de lectura y escritura, agrega una etiqueta con
BEGIN TAG tag. La CLI de Spanner agrega la etiqueta como una etiqueta de transacción. La etiqueta también se usa como etiqueta de solicitud dentro de la transacción. - En una transacción de solo lectura, agrega una etiqueta con
BEGIN RO TAG tag. Debido a que las transacciones de solo lectura no admiten etiquetas de transacción, Spanner agrega la etiqueta como una etiqueta de solicitud.
- En una transacción de lectura y escritura, agrega una etiqueta con
COMMIT;
Finaliza y hace permanentes todos los cambios en una transacción de lectura y escritura.
CLOSE;
Cierra una transacción de solo lectura.
ROLLBACK;
Revierte (deshace) una transacción de lectura y escritura.
¿Qué sigue?
- Obtén más información sobre la CLI de Spanner.