Esquema de información para bases de datos de dialecto de GoogleSQL

El esquema de información es un esquema integrado que es común a todas las bases de datos de Spanner. Puedes ejecutar consultas de SQL en tablas en el INFORMATION_SCHEMA a fin de recuperar metadatos de esquema para una base de datos.

Por ejemplo, la siguiente consulta recupera los nombres de todas las tablas definidas por el usuario en una base de datos:

  SELECT
    table_name
  FROM
    information_schema.tables
  WHERE
    table_schema = ''

Los usuarios del control de acceso detallado ven resultados filtrados para algunas tablas INFORMATION_SCHEMA según su rol de base de datos. Para obtener más información, consulta Información sobre el control de acceso detallado.

Uso

Las tablas INFORMATION_SCHEMA solo están disponibles a través de interfaces de SQL, por ejemplo:

  • La API de executeQuery
  • El comando gcloud spanner databases execute-sql
  • La página Spanner Studio de una base de datos en la consola de Google Cloud

Otros métodos de lectura única no son compatibles con INFORMATION_SCHEMA.

Estas son algunas notas adicionales de uso de INFORMATION_SCHEMA:

Filtrado de filas en las tablas de information_schema

Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader (o a los miembros de ese rol) pueden ver todas las filas de todas las tablas de information_schema. Para otros principales, en algunas tablas, las filas se filtran según el rol de la base de datos actual. En las siguientes secciones, se indican las descripciones de las tablas y las vistas para ver cómo se aplica el filtrado de filas a cada una de ellas.

Tablas en INFORMATION_SCHEMA

En las siguientes secciones, se describen las tablas de INFORMATION_SCHEMA para las bases de datos de dialecto de GoogleSQL.

SCHEMATA

La tabla INFORMATION_SCHEMA.SCHEMATA enumera los esquemas en la base de datos. En estos se incluyen el esquema de información y los esquemas nombrados, que contienen las tablas que definas.

Nombre de la columna Tipo Descripción
CATALOG_NAME STRING Es el nombre del catálogo. Esta columna existe para la compatibilidad con las tablas de esquema de información estándar de SQL. Esta columna siempre es una cadena vacía.
SCHEMA_NAME STRING Es el nombre del esquema. Es un nombre para los esquemas con nombre o " para el esquema predeterminado.
PROTO_BUNDLE STRING Si la base de datos contiene sentencias de paquete de proto, esta columna proporciona información sobre el paquete de proto que se usa en el esquema. Esta columna es NULL si no existe un paquete de proto en la base de datos.

DATABASE_OPTIONS

En esta tabla, se enumeran las opciones que se configuran en la base de datos.

Nombre de la columna Tipo Descripción
CATALOG_NAME STRING Es el nombre del catálogo. Siempre es una string vacía.
SCHEMA_NAME STRING Es el nombre del esquema. Es una string vacía si no tiene nombre.
OPTION_NAME STRING El nombre de la opción de base de datos.
OPTION_TYPE STRING Tipo de datos de la opción de base de datos.
OPTION_VALUE STRING El valor de la opción de base de datos.

PLACEMENTS

En esta tabla, se enumeran las posiciones de la base de datos.

Nombre de la columna Tipo Descripción
PLACEMENT_NAME STRING Es el nombre de la posición.
IS_DEFAULT BOOL Es un valor booleano que indica si la posición es la predeterminada.

PLACEMENT_OPTIONS

En esta tabla, se enumeran las opciones que se configuran en la ubicación en la cláusula OPTIONS de la sentencia CREATE PLACEMENT para cada ubicación.

Los valores válidos para OPTION_NAME incluyen lo siguiente:

  • instance_partition
  • default_leader
Nombre de la columna Tipo Descripción
PLACEMENT_NAME STRING Es el nombre de la posición.
OPTION_NAME STRING Es el nombre de la opción de posición.
OPTION_TYPE STRING Es el tipo de datos de la opción de posición. Para ambas opciones, es STRING(MAX).
OPTION_VALUE STRING Es el valor de la opción de posición. Para instance_partition, este es el nombre de la partición de la instancia. Para default_leader, es el nombre de la región líder predeterminada.

TABLES

En esta tabla filtrada por filas, se enumeran las tablas y vistas de la base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las tablas que cumplan con alguno de los siguientes requisitos:

  • Los privilegios de control de acceso detallado SELECT, INSERT, UPDATE o DELETE se otorgan en la tabla al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Los privilegios SELECT, INSERT o UPDATE se otorgan en cualquier columna de la tabla al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla, la vista o el sinónimo.
TABLE_TYPE STRING El tipo de tabla. Para las tablas, tiene el valor BASE TABLE; para las vistas, tiene el valor VIEW; para los sinónimos, tiene el valor SYNONYM.
PARENT_TABLE_NAME STRING Es el nombre de la tabla superior si esta tabla está intercalada, y NULL de lo contrario.
ON_DELETE_ACTION STRING Esta opción está configurada en CASCADE o en NO ACTION para las tablas intercaladas, y en NULL en el caso contrario. Consulta Instrucciones de TABLE para obtener más información.
SPANNER_STATE STRING Una tabla puede pasar por varios estados durante la creación, si se incluyen operaciones masivas. Por ejemplo, cuando la tabla se crea con una clave externa que requiere el reabastecimiento de sus índices. Los estados posibles son los siguientes:
  • ADDING_FOREIGN_KEY: agrega las claves externas de la tabla
  • WAITING_FOR_COMMIT: finaliza el cambio de esquema.
  • COMMITTED: Se confirmó el cambio de esquema para crear la tabla. No puedes escribir en la tabla hasta que el cambio se confirme.
INTERLEAVE_TYPE STRING Es el texto de la expresión que indica si hay una relación superior-secundaria entre esta tabla y la tabla en la que se intercala. Los valores posibles son los siguientes:
  • IN: La tabla no tiene una relación superior-secundaria. Una fila en esta tabla puede existir independientemente de la fila de la tabla superior.
  • IN PARENT: La tabla tiene una relación superior-secundario. Una fila de esta tabla requiere la existencia de la fila de la tabla superior.
  • Una cadena vacía indica que esta tabla no tiene relaciones de intercalación.
ROW_DELETION_POLICY_EXPRESSION STRING Es el texto de la expresión que define la política de eliminación de filas de la tabla. Por ejemplo, OLDER_THAN(CreatedAt, INTERVAL 1 DAY) o OLDER_THAN(ExpiredDate, INTERVAL 0 DAY).

COLUMNS

En esta tabla filtrada por filas, se enumeran las columnas de una tabla. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las columnas que cumplen con cualquiera de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga directamente en la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga en la tabla que contiene la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla.
COLUMN_NAME STRING Es el nombre de la columna
ORDINAL_POSITION INT64 Es la posición ordinal de la columna en la tabla, que comienza con un valor de 1.
COLUMN_DEFAULT STRING

Es una representación de cadena de la expresión SQL para el valor predeterminado de la columna. NULL si la columna no tiene un valor predeterminado.

Nota: Antes de marzo de 2022, COLUMN_DEFAULT usaba el tipo BYTES.

DATA_TYPE STRING Se incluye para satisfacer el estándar de SQL. Siempre NULL. Consulta la columna SPANNER_TYPE.
IS_NULLABLE STRING Es una string que indica si la columna acepta el valor NULL. De acuerdo con el estándar de SQL, la cadena es YES o NO, en lugar de un valor booleano.
SPANNER_TYPE STRING Es el tipo de datos de la columna.
IS_GENERATED STRING Es una string que indica si la columna se genera. La string es ALWAYS para una columna generada o NEVER para una columna no generada.
GENERATION_EXPRESSION STRING Una string que representa la expresión SQL de una columna generada. NULL si la columna no es una columna generada.
IS_STORED STRING Una string que indica si se almacena la columna generada. La string siempre es YES para las columnas generadas y NULL para las columnas no generadas.
SPANNER_STATE STRING El estado actual de la columna. Una nueva columna generada almacenada que se agrega a una tabla existente puede pasar por varios estados que el usuario puede observar antes de que se pueda usar por completo. Los valores posibles son los siguientes:
  • WRITE_ONLY: La columna se está reabasteciendo. No se permite la lectura.
  • COMMITTED: la columna es completamente utilizable.

COLUMN_PRIVILEGES

En esta tabla filtrada por filas, se enumeran todos los privilegios otorgados a nivel de la columna a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas en esta vista. Todos los demás principales pueden ver los privilegios solo para las columnas que cumplan alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga directamente en la columna al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.
  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga en la tabla que contiene la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla que contiene la columna con privilegios.
COLUMN_NAME STRING Es el nombre de la columna con privilegios.
PRIVILEGE_TYPE STRING SELECT, INSERT, UPDATE
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

TABLE_PRIVILEGES

En esta tabla filtrada por filas, se enumeran todos los privilegios otorgados a nivel de la tabla a los roles de base de datos, incluido public. Las principales con permisos de IAM a nivel de la base de datos y las principales a las que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales pueden ver los privilegios solo para las tablas en las que se otorgan cualquiera de los privilegios de control de acceso detallado de SELECT, INSERT, UPDATE o DELETE al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla en la que se otorgan los privilegios de control de acceso detallado.
PRIVILEGE_TYPE STRING Uno de SELECT, INSERT, UPDATE y DELETE
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

TABLE_CONSTRAINTS

Esta tabla contiene una fila para cada restricción definida para las tablas en la base de datos.

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING Siempre hay una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de la restricción. Es una string vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la restricción.
TABLE_CATALOG STRING El nombre del catálogo de la tabla restringida. Siempre es una string vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla restringida. Es una string vacía si no tiene nombre.
TABLE_NAME STRING El nombre de la tabla restringida.
CONSTRAINT_TYPE STRING El tipo de restricción. Los valores posibles son los siguientes:
  • PRIMARY KEY
  • FOREIGN KEY
  • PLACEMENT KEY
  • CHECK
  • UNIQUE
IS_DEFERRABLE STRING Siempre NO.
INITIALLY_DEFERRED STRING Siempre NO.
ENFORCED STRING Siempre YES.

CONSTRAINT_TABLE_USAGE

En la tabla, se enumeran tablas que definen o usan las restricciones. Incluye tablas que definen restricciones PRIMARY KEY y UNIQUE. También incluye las tablas a las que se hace referencia en las definiciones FOREIGN KEY.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Es el nombre del catálogo de la tabla restringida. Siempre es una string vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla restringida. Es una string vacía si no tiene nombre.
TABLE_NAME STRING El nombre de la tabla restringida.
CONSTRAINT_CATALOG STRING El nombre del catálogo de la restricción. Siempre es una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de la restricción. Es una string vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la restricción.

REFERENTIAL_CONSTRAINTS

Esta tabla contiene una fila para cada restricción FOREIGN KEY.

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING El nombre del catálogo de CLAVE EXTERNA. Siempre es una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de CLAVE EXTERNA. Es una string vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la CLAVE EXTERNA.
UNIQUE_CONSTRAINT_CATALOG STRING Es el nombre del catálogo de la CLAVE PRIMARIA o la ÚNICA restricción de las referencias de CLAVE EXTERNA. Siempre es una string vacía.
UNIQUE_CONSTRAINT_SCHEMA STRING Es el nombre del esquema de la CLAVE PRIMARIA o la restricción UNIQUE de las referencias de CLAVE EXTERNA. Es una string vacía si no tiene nombre.
UNIQUE_CONSTRAINT_NAME STRING Es el nombre de la CLAVE PRIMARIA o la restricción UNIQUE de las referencias de CLAVE EXTERNA.
MATCH_OPTION STRING Siempre SIMPLE.
UPDATE_RULE STRING Siempre NO ACTION.
DELETE_RULE STRING CASCADE o NO ACTION
SPANNER_STATE STRING El estado actual de la clave externa. Spanner no comienza a aplicar la restricción hasta que se crean y reabastecen los índices de respaldo de la clave externa. Una vez que los índices están listos, Spanner comienza a aplicar la restricción para las transacciones nuevas mientras valida los datos existentes. Los valores posibles y los estados que representan son los siguientes:
  • BACKFILLING_INDEXES: Los índices se están reabasteciendo.
  • VALIDATING_DATA: Se están validando los datos existentes y las escrituras nuevas.
  • WAITING_FOR_COMMIT: Las operaciones masivas de claves externas se completaron correctamente o no fueron necesarias, pero la clave externa aún está pendiente.
  • COMMITTED: Se confirmó el cambio de esquema.

CHECK_CONSTRAINTS

La tabla information_schema.CHECK_CONSTRAINTS contiene una fila para cada restricción CHECK definida por la palabra clave CHECK o NOT NULL.

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING El nombre del catálogo de la restricción. Esta columna nunca es nula, pero siempre es una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de la restricción. Es una string vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la restricción. Esta columna nunca es NULL. Si no se especifica de forma explícita en la definición del esquema, se asigna un nombre definido por el sistema.
CHECK_CLAUSE STRING Las expresiones de la restricción CHECK. Esta columna nunca es NULL.
SPANNER_STATE STRING El estado actual de la restricción CHECK. Esta columna nunca es NULL. Los estados posibles son los siguientes:
  • VALIDATING: Spanner valida los datos existentes.
  • COMMITTED: No hay un cambio de esquema activo para esta restricción.

KEY_COLUMN_USAGE

Esta tabla filtrada por filas contiene una fila para cada columna de las tablas de TABLE_CONSTRAINTS que están restringidas como claves por una restricción PRIMARY KEY, FOREIGN KEY o UNIQUE. Las principales con permisos de IAM a nivel de la base de datos y las principales a las que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las columnas que cumplen con los siguientes criterios:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga directamente en la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga en la tabla que contiene la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING El nombre del catálogo de la restricción. Siempre es una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de la restricción. Esta columna nunca es NULL. Es una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la restricción.
TABLE_CATALOG STRING El nombre del catálogo de la columna restringida. Siempre es una string vacía.
TABLE_SCHEMA STRING El nombre del esquema de la columna restringida. Esta columna nunca es NULL. Es una string vacía si no tiene nombre.
TABLE_NAME STRING El nombre de la tabla de la columna restringida.
COLUMN_NAME STRING Es el nombre de la columna
ORDINAL_POSITION INT64 Es la posición ordinal de la columna dentro de la clave de la restricción, que comienza con un valor de 1.
POSITION_IN_UNIQUE_CONSTRAINT INT64 Para los FOREIGN KEY, la posición ordinal de la columna dentro de la restricción única, que comienza con un valor de 1. Esta columna es nula para otros tipos de restricciones.

CONSTRAINT_COLUMN_USAGE

Esta tabla contiene una fila para cada columna que usa una restricción. Incluye las columnas PRIMARY KEY y UNIQUE, más las columnas a las que se hace referencia en las restricciones FOREIGN KEY.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING El nombre del catálogo de la tabla de la columna. Siempre es una string vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla de columnas. Esta columna nunca es NULL. Es una cadena vacía si no tiene nombre.
TABLE_NAME STRING El nombre de la tabla de la columna.
COLUMN_NAME STRING El nombre de la columna que se usa en la restricción.
CONSTRAINT_CATALOG STRING El nombre del catálogo de la restricción. Siempre es una string vacía.
CONSTRAINT_SCHEMA STRING El nombre del esquema de la restricción. Es una string vacía si no tiene nombre.
CONSTRAINT_NAME STRING El nombre de la restricción.

TABLE_SYNONYMS

En esta tabla, se muestra información sobre los sinónimos de la tabla.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla.
SYNONYM_CATALOG STRING Es el nombre del catálogo del sinónimo.
SYNONYM_SCHEMA STRING Es el nombre del esquema del sinónimo.
SYNONYM_TABLE_NAME STRING Es el nombre de la tabla del sinónimo.

INDEXES

En esta tabla filtrada por filas, se enumeran los índices de la base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los índices que cumplen con cualquiera de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga a nivel de la columna en todas las columnas del índice al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Se otorgan cualquiera de los privilegios de control de acceso detallados de SELECT, INSERT, UPDATE o DELETE en la tabla que tiene el índice del rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema. Es una string vacía si no tiene nombre.
TABLE_NAME STRING Es el nombre de la tabla.
INDEX_NAME STRING Es el nombre del índice. Las tablas con una especificación PRIMARY KEY tienen una entrada de seudoíndice generada con el nombre PRIMARY_KEY, que permite determinar los campos de la clave primaria.
INDEX_TYPE STRING Es el tipo de índice. El tipo es INDEX o PRIMARY_KEY.
PARENT_TABLE_NAME STRING Los índices secundarios se pueden intercalar en una tabla superior, como se explica en la sección sobre cómo crear un índice secundario. Esta columna contiene el nombre de esa tabla superior, o una cadena vacía si el índice no está intercalado.
IS_UNIQUE BOOL Se indica si las claves de índice deben ser únicas.
IS_NULL_FILTERED BOOL Se indica si el índice incluye entradas con valores NULL.
INDEX_STATE STRING Es el estado actual del índice. Los valores posibles y los estados que representan son los siguientes:
  • PREPARE: Crea tablas vacías para un índice nuevo.
  • WRITE_ONLY: Reabastece los datos para un índice nuevo.
  • WRITE_ONLY_CLEANUP: Limpia un índice nuevo.
  • WRITE_ONLY_VALIDATE_UNIQUE: Comprueba la unicidad de los datos en un índice nuevo.
  • READ_WRITE: Operación de índice normal.
SPANNER_IS_MANAGED BOOL TRUE si Spanner administra el índice; de lo contrario, FALSE. Spanner administra los índices de respaldo secundarios para las claves externas.

INDEX_COLUMNS

En esta tabla filtrada por filas, se enumeran las columnas de un índice. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los índices que cumplen con cualquiera de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga a nivel de la columna en todas las columnas del índice al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga en la tabla que tiene el índice del rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema. Es una string vacía si no tiene nombre.
TABLE_NAME STRING Es el nombre de la tabla.
INDEX_NAME STRING Es el nombre del índice.
COLUMN_NAME STRING Es el nombre de la columna
ORDINAL_POSITION INT64 Es la posición ordinal de la columna en el índice (o clave primaria), que comienza con un valor de 1. Este valor es NULL para las columnas sin clave (por ejemplo, las columnas especificadas en la cláusula STORING de un índice).
COLUMN_ORDERING STRING Es el orden de la columna. El valor es ASC o DESC para las columnas de clave, y NULL para las columnas sin clave (por ejemplo, las columnas especificadas en la cláusula STORING de un índice).
IS_NULLABLE STRING Es una string que indica si la columna acepta el valor NULL. De acuerdo con el estándar de SQL, la cadena es YES o NO, en lugar de un valor booleano.
SPANNER_TYPE STRING Es el tipo de datos de la columna.

COLUMN_OPTIONS

En esta tabla filtrada por filas, se enumeran las opciones de columna de una tabla. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver opciones para las columnas que cumplan con alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga directamente en la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
  • Cualquiera de los privilegios de control de acceso detallado SELECT, INSERT o UPDATE se otorga en la tabla que contiene la columna al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema. El nombre está vacío en el esquema predeterminado y no está vacío en otros esquemas (por ejemplo, en el INFORMATION_SCHEMA). Esta columna nunca es NULL.
TABLE_NAME STRING Es el nombre de la tabla.
COLUMN_NAME STRING Es el nombre de la columna
OPTION_NAME STRING Un identificador de SQL que identifica la opción de forma única. Este identificador es la clave de la cláusula OPTIONS en DDL.
OPTION_TYPE STRING Es un nombre de tipo de datos que es el tipo de este valor de opción.
OPTION_VALUE STRING Un literal de SQL que describe el valor de esta opción. El valor de esta columna debe poder analizarse como parte de una consulta. La expresión resultante de este análisis del valor debe poder convertirse en OPTION_TYPE. Esta columna nunca es NULL.

SEQUENCES

En esta tabla, se enumeran los metadatos de las secuencias. SEQUENCES se filtra por fila según los privilegios de acceso detallados, si un usuario con privilegios de acceso detallados lo consulta.

Nombre de la columna Tipo Descripción
CATALOG STRING Es el nombre del catálogo que contiene la secuencia.
SCHEMA STRING Es el nombre del esquema que contiene la secuencia.
NAME STRING Es el nombre de la secuencia.
DATA_TYPE STRING Es el tipo de los valores de secuencia. Usa el tipo de datos INT64.

SEQUENCE_OPTIONS

Esta tabla contiene las opciones de configuración de las secuencias. SEQUENCE_OPTIONS se filtra por fila según los privilegios de acceso detallados si un usuario con privilegios de acceso detallados lo consulta.

Nombre de la columna Tipo Descripción
CATALOG STRING Es el nombre del catálogo que contiene la secuencia.
SCHEMA STRING Es el nombre del esquema que contiene la secuencia.
NAME STRING Es el nombre de la secuencia.
OPTION_NAME STRING Es el nombre de la opción de secuencia.
OPTION_TYPE STRING Es un nombre de tipo de datos que es el tipo de este valor de opción.
OPTION_VALUE STRING El valor de la opción de secuencia. La expresión resultante de este análisis del valor debe permitir la conversión a OPTION_TYPE.

SPANNER_STATISTICS

En esta tabla, se enumeran los paquetes de estadísticas del optimizador de consultas disponibles.

Nombre de la columna Tipo Descripción
CATALOG_NAME STRING Es el nombre del catálogo. Siempre es una string vacía.
SCHEMA_NAME STRING Es el nombre del esquema. El nombre está vacío en el esquema predeterminado y no está vacío en otros esquemas (por ejemplo, en el INFORMATION_SCHEMA). Esta columna nunca es NULL.
PACKAGE_NAME STRING El nombre del paquete de estadísticas.
ALLOW_GC BOOL Es FALSE si el paquete de estadísticas está exento de la recolección de elementos no utilizados; de lo contrario, es TRUE.
Este atributo debe configurarse como FALSE para hacer referencia al paquete de estadísticas en un ajuste o a través de la API de cliente.

VIEWS

En esta tabla filtrada por filas, se enumeran las vistas de la base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las vistas en las que se otorga el privilegio de control de acceso detallado SELECT al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema. Es una string vacía si no tiene nombre.
TABLE_NAME STRING El nombre de la vista.
VIEW_DEFINITION STRING El texto SQL de la consulta que define la vista.
SECURITY_TYPE STRING Es el tipo de seguridad de la vista. INVOKER o DEFINER

Para obtener más información, consulta Acerca de las vistas.

ROLES

En esta tabla filtrada por filas, se enumeran los roles de base de datos definidos para el control de acceso detallado, incluidos los roles del sistema. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todos los roles de la base de datos. Todos los demás principales solo pueden ver los roles de la base de datos a los que se les otorgó acceso, ya sea directamente o a través de la herencia.

Nombre de la columna Tipo Descripción
ROLE_NAME STRING Es el nombre del rol de la base de datos.
IS_SYSTEM BOOL TRUE si el rol de la base de datos es un rol del sistema; FALSE en caso contrario.

ROLE_GRANTEES

En esta tabla filtrada por filas, se enumeran todas las membresías de roles otorgadas de forma explícita a todos los roles de la base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las membresías de roles otorgadas al rol de base de datos actual o a un rol del que el rol de base de datos actual es miembro.

Debido a que todos los roles de la base de datos son miembros del rol público, los resultados omiten los registros de membresía implícita en el rol público.

Nombre de la columna Tipo Descripción
ROLE_NAME STRING Es el nombre del rol de la base de datos en el que se otorga esta membresía.
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga esta membresía.

CHANGE_STREAMS

En esta tabla filtrada por filas, se enumeran todos los flujos de cambios de una base de datos y se indica cuáles hacen un seguimiento de toda la base de datos en comparación con tablas o columnas específicas. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los flujos de cambios en los que se otorga el privilegio de control de acceso detallado SELECT al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Es el nombre del catálogo del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema de este flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios.
ALL BOOL TRUE si este flujo de cambios realiza un seguimiento de toda la base de datos. FALSE si este flujo de cambios realiza un seguimiento de tablas o columnas específicas.

CHANGE_STREAM_TABLES

Esta tabla filtrada por filas contiene información sobre las tablas y los flujos de cambios que las supervisan. Cada fila describe una tabla y un flujo de cambios. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver filas de flujos de cambios en los que se otorga el privilegio SELECT al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Los datos de CHANGE_STREAM_TABLES no incluyen las relaciones implícitas entre las tablas y las transmisiones de cambios que hacen un seguimiento de toda la base de datos.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Es el nombre del catálogo del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios al que hace referencia esta fila.
TABLE_CATALOG STRING Es el nombre del catálogo de la tabla. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema de la tabla. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla a la que hace referencia esta fila.
ALL_COLUMNS BOOL TRUE si el flujo de cambios de esta fila hace un seguimiento de toda la tabla a la que hace referencia esta fila. En caso contrario, FALSE.

CHANGE_STREAM_COLUMNS

Esta tabla filtrada por filas contiene información sobre las columnas de la tabla y los flujos de cambios que las supervisan. Cada fila describe un flujo de cambios y una columna. Si un flujo de cambios hace un seguimiento de una tabla completa, las columnas de esa tabla no se muestran en esta vista.

Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las filas de los flujos de cambios en los que se otorga el privilegio SELECT al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Es el nombre del catálogo del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios.
TABLE_CATALOG STRING Es el nombre del catálogo de la tabla. Siempre es una string vacía.
TABLE_SCHEMA STRING Es el nombre del esquema de la tabla. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla a la que hace referencia esta fila.
COLUMN_NAME STRING Es el nombre de la columna a la que hace referencia esta fila.

CHANGE_STREAM_OPTIONS

Esta tabla filtrada por filas contiene las opciones de configuración de los flujos de cambios. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las opciones de flujos de cambios en los que se otorga el privilegio SELECT al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Es el nombre del catálogo del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema del flujo de cambios. Siempre es una string vacía.
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios.
OPTION_NAME STRING Es el nombre de la opción de flujo de cambios.
OPTION_TYPE STRING Es el tipo de datos de la opción de flujo de cambios.
OPTION_VALUE STRING El valor de la opción de flujo de cambios.

CHANGE_STREAM_PRIVILEGES

En esta tabla filtrada por filas, se enumeran todos los privilegios de control de acceso detallado otorgados en todos los flujos de cambios a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en los flujos de cambios al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Es el nombre del catálogo que contiene el flujo de cambios (una cadena vacía).
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema que contiene el flujo de cambios (una cadena vacía).
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios.
PRIVILEGE_TYPE STRING SELECT (el único privilegio permitido para los flujos de cambios).
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

ROUTINES

En esta tabla filtrada por filas, se enumeran todas las funciones de lectura de la transmisión de cambios de una base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las funciones de lectura de flujo de cambios en las que se otorga el privilegio de control de acceso detallado EXECUTE al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Es el nombre del catálogo de la rutina. Siempre es una string vacía.
SPECIFIC_SCHEMA STRING Es el nombre del esquema de la rutina. Siempre es una string vacía.
SPECIFIC_NAME STRING Es el nombre de la rutina. Identifica de forma única la rutina, incluso si su nombre está sobrecargado.
ROUTINE_CATALOG STRING Es el nombre del catálogo de la rutina. Siempre es una string vacía.
ROUTINE_SCHEMA STRING Es el nombre del esquema de la rutina. Siempre es una string vacía.
ROUTINE_NAME STRING Es el nombre de la rutina. (Puede duplicarse en caso de sobrecarga).
ROUTINE_TYPE STRING Es el tipo de rutina (FUNCTION o PROCEDURE). Siempre es FUNCTION.
DATA_TYPE STRING El tipo de datos que muestra la rutina
ROUTINE_BODY STRING Es el tipo del cuerpo de la rutina (SQL o EXTERNAL).
ROUTINE_DEFINITION STRING Es la definición de ROUTINE_BODY.
SECURITY_TYPE STRING Es el tipo de seguridad de la rutina. Siempre INVOKER.

ROUTINE_OPTIONS

Esta tabla filtrada por fila contiene una fila para cada opción de cada función de lectura de flujo de cambios definida.

Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver las opciones para las funciones de lectura de flujos de cambios en las que se otorga el privilegio de control de acceso detallado EXECUTE al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Es el nombre del catálogo de la rutina. Siempre es una string vacía.
SPECIFIC_SCHEMA STRING Es el nombre del esquema de la rutina. Siempre es una string vacía.
SPECIFIC_NAME STRING Es el nombre de la rutina. Identifica de forma única la rutina en caso de sobrecarga de nombres.
OPTION_NAME STRING Un identificador de SQL que identifica la opción de forma única.
OPTION_TYPE STRING Es el tipo de datos de OPTION_VALUE.
OPTION_VALUE STRING Un literal de SQL que describe el valor de esta opción. El valor de esta columna debe poder analizarse como parte de una consulta.

PARAMETERS

Esta tabla filtrada por filas define los argumentos de cada función de lectura del flujo de cambios. Cada fila describe un argumento para una función de lectura de flujo de cambios.

Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los parámetros de las funciones de lectura de flujos de cambios en los que se otorga el privilegio de control de acceso detallado EXECUTE al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Es el nombre del catálogo de la rutina. Siempre es una string vacía.
SPECIFIC_SCHEMA STRING Es el nombre del esquema de la rutina. Siempre es una string vacía.
SPECIFIC_NAME STRING Es el nombre de la rutina. Identifica de forma única la rutina en caso de sobrecarga de nombres.
ORDINAL_POSITION INT64 Es la posición ordinal del parámetro en la rutina, que comienza con un valor de 1.
PARAMETER_NAME STRING El nombre del parámetro.
DATA_TYPE STRING Es el tipo de datos del parámetro.

ROUTINE_PRIVILEGES

En esta tabla filtrada por filas, se enumeran todos los privilegios de control de acceso detallado otorgados en todas las funciones de lectura de flujo de cambios a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las funciones de lectura de la transmisión de cambios al rol de la base de datos actual, a los roles de los que el rol de la base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Es el nombre del catálogo de la rutina. Siempre es una string vacía.
SPECIFIC_SCHEMA STRING Es el nombre del esquema de la rutina. Siempre es una string vacía.
SPECIFIC_NAME STRING Es el nombre de la rutina. Identifica de forma única la rutina en caso de sobrecarga de nombres.
PRIVILEGE_TYPE STRING Siempre EXECUTE.
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

ROLE_TABLE_GRANTS

En esta tabla filtrada por filas, se enumeran todos los privilegios de control de acceso detallado otorgados en todas las tablas y vistas a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las tablas y vistas al rol de base de datos actual y a los roles de los que el rol de base de datos actual es miembro, sin incluir public.

Nombre de la columna Tipo Descripción
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING El nombre de la tabla o vista.
PRIVILEGE_TYPE STRING Es el tipo de privilegio (SELECT, INSERT, UPDATE o DELETE).
IS_GRANTABLE STRING No se usa. Siempre NO.

ROLE_COLUMN_GRANTS

En esta tabla filtrada por filas, se enumeran todos los privilegios de control de acceso detallado otorgados en todas las columnas a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las columnas al rol de base de datos actual y a los roles de los que el rol de base de datos actual es miembro, sin incluir public.

La vista incluye los privilegios SELECT, INSERT y UPDATE que la columna hereda de la tabla o vista que la contiene.

Nombre de la columna Tipo Descripción
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.
TABLE_CATALOG STRING No se usa. Siempre es una string vacía.
TABLE_SCHEMA STRING No se usa. Siempre es una string vacía.
TABLE_NAME STRING Es el nombre de la tabla o vista que contiene la columna.
COLUMN_NAME STRING Es el nombre de la columna en la que se otorga el privilegio.
PRIVILEGE_TYPE STRING Es el tipo de privilegio (SELECT, INSERT o UPDATE).
IS_GRANTABLE STRING No se usa. Siempre NO.

ROLE_CHANGE_STREAM_GRANTS

En esta tabla filtrada por filas, se enumeran los privilegios SELECT otorgados en todos los flujos de cambios a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las transmisiones de cambios al rol de base de datos actual y a los roles de los que el rol de base de datos actual es miembro, sin incluir public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING No se usa. Siempre es una string vacía.
CHANGE_STREAM_SCHEMA STRING Es el nombre del esquema que contiene el flujo de cambios.
CHANGE_STREAM_NAME STRING Es el nombre del flujo de cambios.
PRIVILEGE_TYPE STRING Es el tipo de privilegio (solo SELECT).
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

ROLE_MODEL_GRANTS

En esta tabla con filtro de filas, se enumeran todos los privilegios de control de acceso detallado otorgados en todos los modelos a cualquier rol de base de datos, incluido public. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las tablas y vistas al rol de base de datos actual y a los roles de los que el rol de base de datos actual es miembro, sin incluir public.

Nombre de la columna Tipo Descripción
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.
MODEL_CATALOG STRING No se usa. Siempre es una string vacía.
MODEL_SCHEMA STRING No se usa. Siempre es una string vacía.
MODEL_NAME STRING El nombre del modelo.
PRIVILEGE_TYPE STRING Es el tipo de privilegio (EXECUTE).
IS_GRANTABLE STRING No se usa. Siempre NO.

ROLE_ROUTINE_GRANTS

En esta tabla filtrada por filas, se enumeran los privilegios EXECUTE otorgados en todas las funciones de lectura de la transmisión de cambios a cualquier rol de base de datos, incluido public. Los principales con permisos a nivel de la base de datos de IAM y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas en esta vista. Todos los demás principales solo pueden ver los privilegios otorgados en las funciones de lectura de la transmisión de cambios al rol de la base de datos actual y a los roles de los que el rol de la base de datos actual es miembro, sin incluir public.

Nombre de la columna Tipo Descripción
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Es el nombre del rol al que se otorga el privilegio.
SPECIFIC_CATALOG STRING Es el nombre del catálogo de rutinas.
SPECIFIC_SCHEMA STRING Es el nombre del esquema de la rutina.
SPECIFIC_NAME STRING Es el nombre de la rutina. Identifica de forma única la rutina en caso de sobrecarga de nombres.
PRIVILEGE_TYPE STRING Es el tipo de privilegio otorgado. Siempre EXECUTE.
IS_GRANTABLE STRING No se usa. Siempre NO.

MODELS

En esta tabla, se enumeran todos los modelos de una base de datos.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
MODEL_SCHEMA STRING Es el nombre del esquema de este modelo. Siempre es una string vacía.
MODEL_NAME STRING El nombre del modelo.
IS_REMOTE BOOL TRUE si se trata de un modelo remoto. FALSE si se trata de un modelo administrado.

MODEL_OPTIONS

Esta tabla contiene las opciones de configuración de los modelos.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
MODEL_SCHEMA STRING Es el nombre del esquema de este modelo. Siempre es una string vacía.
MODEL_NAME STRING El nombre del modelo.
OPTION_NAME STRING Es el nombre de la opción del modelo.
OPTION_TYPE STRING Es el tipo de datos de la opción de modelo.
OPTION_VALUE STRING El valor de la opción del modelo.

MODEL_COLUMNS

En esta tabla, se enumeran las columnas de un modelo.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
MODEL_SCHEMA STRING Es el nombre del esquema de este modelo. Siempre es una string vacía.
MODEL_NAME STRING El nombre del modelo.
COLUMN_KIND STRING Tipo de columna del modelo. Puede ser "INPUT" o "OUTPUT".
COLUMN_NAME STRING Es el nombre de la columna
DATA_TYPE STRING Es el tipo de datos de SQL estándar de la columna.
ORDINAL_POSITION INT64 Es la posición ordinal de la columna, que comienza con un valor de 1, para preservar el orden de las columnas declaradas.
IS_EXPLICIT BOOL TRUE si la columna se especificó de forma explícita en la DDL, FALSE si la columna se descubrió desde el extremo.

MODEL_COLUMN_OPTIONS

Esta tabla contiene las opciones de configuración para las columnas del modelo.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
MODEL_SCHEMA STRING Es el nombre del esquema de este modelo. Siempre es una string vacía.
MODEL_NAME STRING El nombre del modelo.
COLUMN_KIND STRING Tipo de columna del modelo. Puede ser "INPUT" o "OUTPUT".
COLUMN_NAME STRING Es el nombre de la columna
OPTION_NAME STRING Es el nombre de la opción de columna del modelo.
OPTION_TYPE STRING Es el tipo de datos de la opción de columna del modelo.
OPTION_VALUE STRING El valor de la opción de la columna del modelo.

MODEL_PRIVILEGES

En esta tabla filtrada por filas, se enumeran todos los privilegios otorgados a nivel del modelo a los roles de base de datos, incluido public. Las principales con permisos de IAM a nivel de la base de datos y las principales a las que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales pueden ver los privilegios solo para los modelos en los que se otorga el privilegio de control de acceso detallado EXECUTE al rol de base de datos actual, a los roles de los que el rol de base de datos actual es miembro o a public.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING No se usa. Siempre es una string vacía.
MODEL_SCHEMA STRING No se usa. Siempre es una string vacía.
MODEL_NAME STRING Es el nombre del modelo en el que se otorgan los privilegios de control de acceso detallado.
PRIVILEGE_TYPE STRING EXECUTE>
GRANTEE STRING Es el nombre del rol de la base de datos al que se otorga este privilegio.

PROPERTY_GRAPHS

En esta tabla filtrada por filas, se enumeran los gráficos de propiedades en la base de datos. Los principales con permisos de IAM a nivel de la base de datos y los principales a los que se les otorgó acceso al rol del sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás principales solo pueden ver gráficos de propiedades si cumplen con los requisitos para ver todas las tablas que se usan para definir esos gráficos.

Nombre de la columna Tipo Descripción
PROPERTY_GRAPH_CATALOG STRING Es el nombre del catálogo. Siempre es una string vacía.
PROPERTY_GRAPH_SCHEMA STRING Es el nombre del esquema. Es una string vacía si no tiene nombre.
PROPERTY_GRAPH_NAME STRING Es el nombre del grafo de propiedades.
PROPERTY_GRAPH_METADATA_JSON JSON La definición del gráfico de propiedades en formato JSON

La columna PROPERTY_GRAPH_METADATA_JSON contiene un objeto JSON PropertyGraph definido de la siguiente manera:

Nombre del objeto JSON Nombre del campo Tipo JSON Descripción
PropertyGraph catalog string Es el nombre del catálogo. Siempre es una string vacía.
schema string Es el nombre del esquema. Es una string vacía si no tiene nombre.
name string Es el nombre del grafo de propiedades.
nodeTables array<object> Una lista de objetos GraphElementTable para los nodos.
edgeTables array<object> Una lista de objetos GraphElementTable para los bordes.
labels array<object> Una lista de objetos GraphElementLabel.
propertyDeclarations array<object> Una lista de objetos GraphPropertyDeclaration.
GraphElementTable name string Es el nombre de la tabla de elementos del gráfico.
kind string NODE o EDGE
baseCatalogName string Es el nombre del catálogo que contiene la tabla base.
baseSchemaName string Es el nombre del esquema que contiene la tabla base.
baseTableName string Es el nombre de la tabla de entrada a partir de la cual se crean los elementos.
keyColumns array<string> Los nombres de las columnas que constituyen la clave del elemento.
labelNames array<string> Los nombres de las etiquetas adjuntas a esta tabla de elementos.
propertyDefinitions array<object> Una lista de objetos GraphPropertyDefinition.
sourceNodeTable object Un objeto GraphNodeTableReference. Solo existen cuando kind es EDGE.
destinationNodeTable object Un objeto GraphNodeTableReference. Solo existen cuando kind es EDGE.
GraphNodeTableReference nodeTableName string Es el nombre de la tabla de elementos del gráfico.
edgeTableColumns array<string> Es el nombre de las columnas asociadas con las claves de origen y destino de los bordes.
nodeTableColumns array<string> Es el nombre de las columnas asociadas con las claves de origen y destino de los nodos.
GraphElementLabel name string Es el nombre de la etiqueta.
propertyDeclarationNames array<string> Los nombres de las propiedades asociadas con esta etiqueta.
GraphPropertyDeclaration name string Es el nombre de la propiedad.
type string Es el tipo de propiedad.
GraphPropertyDefinition propertyDeclarationName string Es el nombre de la propiedad.
valueExpressionSql string Es la expresión que define la propiedad.

Ejemplos

Muestra información sobre cada tabla en el esquema del usuario:

SELECT
  t.table_name,
  t.parent_table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema = ''
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name

Muestra el nombre de todas las tablas en INFORMATION_SCHEMA:

SELECT
  t.table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_schema = "SPANNER_SYS"

Muestra información sobre las columnas de la tabla de usuarios MyTable:

SELECT
  t.column_name,
  t.spanner_type,
  t.is_nullable
FROM
  information_schema.columns AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema = ''
  AND
  t.table_name = 'MyTable'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name,
  t.ordinal_position

Muestra información sobre la región líder predeterminada de la base de datos. Se muestra vacía si no está configurado el líder predeterminado:

SELECT
  s.option_name,
  s.option_value
FROM
  information_schema.database_options s
WHERE
  s.option_name = 'default_leader'

Muestra información sobre cada índice en el esquema del usuario:

SELECT
  t.table_name,
  t.index_name,
  t.parent_table_name
FROM
  information_schema.indexes AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema = ''
  AND
  t.index_type != 'PRIMARY_KEY'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name,
  t.index_name

Muestra todas las columnas que usan opciones distintas de la predeterminada:

SELECT
  t.table_name,
  t.column_name,
  t.option_type,
  t.option_value,
  t.option_name
FROM
  information_schema.column_options AS t
WHERE
  t.table_catalog = ''
AND
  t.table_schema = ''

Muestra las opciones actuales de la base de datos relacionada con el optimizador:

SELECT
  s.option_name,
  s.option_value
FROM
  information_schema.database_options s
WHERE
  s.schema_name=''
  AND s.option_name IN ('optimizer_version',
    'optimizer_statistics_package')

Muestra todos los paquetes de estadísticas disponibles:

SELECT
  *
FROM
  information_schema.spanner_statistics;

Devuelve todas las secuencias:

SELECT
  *
FROM
  information_schema.sequences;

Muestra todas las opciones de secuencia para la secuencia llamada "MySequence".

SELECT
  *
FROM
  information_schema.sequence_options WHERE name="MySequence";

Muestra los nombres de todos los gráficos de propiedades y sus definiciones:

SELECT
  property_graph_name,
  property_graph_metadata_json
FROM
  information_schema.property_graphs

Muestra los nombres de todos los gráficos de propiedades junto con sus etiquetas y propiedades:

SELECT
  property_graph_name,
  property_graph_metadata_json.labels,
  property_graph_metadata_json.propertyDeclarations
FROM
  information_schema.property_graphs

¿Qué sigue?