Esquema de información de bases de datos con dialecto 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 SQL en las tablas de INFORMATION_SCHEMA para obtener los metadatos del esquema de una base de datos.

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

  SELECT
    table_schema,
    table_name
  FROM
    information_schema.tables
  WHERE
    table_schema NOT IN ('information_schema', 'SPANNER_SYS')
    AND table_type = 'BASE TABLE'

Los usuarios con control de acceso pormenorizado ven resultados filtrados de algunas INFORMATION_SCHEMA tablas en función de su rol de base de datos. Para obtener más información, consulta Información sobre el control de acceso granular.

Uso

Las tablas INFORMATION_SCHEMA solo están disponibles a través de interfaces 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 admiten INFORMATION_SCHEMA.

Algunas notas adicionales sobre el uso de INFORMATION_SCHEMA:

Filtrado de filas en tablas information_schema

Los principales con permisos de gestión de identidades y accesos a nivel de base de datos y los principales a los que se les ha concedido acceso al spanner_info_reader rol de sistema (o a los miembros de ese rol) pueden ver todas las filas de todas las tablas information_schema. En el caso de otros principales, en algunas tablas, las filas se filtran en función del rol de base de datos actual. En las descripciones de las tablas y las vistas de las secciones siguientes se indica cómo se aplica el filtrado de filas en cada tabla y vista.

Tablas de INFORMATION_SCHEMA

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

SCHEMATA

En la tabla INFORMATION_SCHEMA.SCHEMATA se muestran los esquemas de la base de datos. Entre ellos, se incluyen el esquema de información y los esquemas con nombre, que contienen las tablas que definas.

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

DATABASE_OPTIONS

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

Nombre de la columna Tipo Descripción
CATALOG_NAME STRING Nombre del catálogo. Siempre una cadena vacía.
SCHEMA_NAME STRING Nombre del esquema. Una cadena vacía si no tiene nombre.
OPTION_NAME STRING Nombre de la opción de la base de datos.
OPTION_TYPE STRING El tipo de datos de la opción de la base de datos.
OPTION_VALUE STRING Valor de la opción de base de datos.

PLACEMENTS

En esta tabla se muestran las ubicaciones de la base de datos.

Nombre de la columna Tipo Descripción
PLACEMENT_NAME STRING El nombre del emplazamiento.
IS_DEFAULT BOOL Valor booleano que indica si el emplazamiento es el predeterminado.

PLACEMENT_OPTIONS

En cada emplazamiento, esta tabla muestra las opciones que se definen en la cláusula OPTIONS de la instrucción CREATE PLACEMENT.

Los valores válidos de OPTION_NAME son los siguientes:

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

LOCALITY_GROUP_OPTIONS

En esta tabla se indica el nombre y las opciones definidas en la cláusula OPTIONS de la instrucción CREATE LOCALITY GROUP de cada grupo de configuración regional.

Nombre de la columna Tipo Descripción
LOCALITY_GROUP_NAME STRING Nombre del grupo de localidades.
OPTION_NAME STRING Nombre de la opción del grupo de localidades. Las opciones válidas son las siguientes:
  • STORAGE: define el tipo de almacenamiento del grupo de localidades.
  • SSD_TO_HDD_SPILL_TIMESPAN: define cuánto tiempo se almacenan los datos en el almacenamiento SSD antes de pasar al almacenamiento HDD.
OPTION_VALUE STRING Valor de la opción de grupo de localidad. En STORAGE, puede ser ssd o hdd. En el caso de SSD_TO_HDD_SPILL_TIMESPAN, es el tiempo que deben almacenarse los datos en SSD antes de que se muevan al almacenamiento en HDD. Por ejemplo, 10d es de 10 días. El tiempo mínimo que puedes definir es de una hora.

TABLES

En esta tabla filtrada por filas se muestran las tablas y las vistas de la base de datos. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las tablas que cumplan alguno de los siguientes requisitos:

  • Los privilegios de control de acceso pormenorizado SELECT, INSERT, UPDATE o DELETE se conceden en la tabla 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 privilegios SELECT, INSERT o UPDATE se conceden en cualquier columna de la tabla 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 una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla, la vista o el sinónimo.
TABLE_TYPE STRING El tipo de tabla. En el caso de las tablas, tiene el valor BASE TABLE; en el de las vistas, el valor VIEW; y en el de los sinónimos, el valor SYNONYM.
PARENT_TABLE_NAME STRING El nombre de la tabla principal si esta tabla está intercalada y NULL en caso contrario.
ON_DELETE_ACTION STRING Se asigna el valor CASCADE o NO ACTION a las tablas intercaladas y NULL en el resto de los casos. Consulta más información sobre las instrucciones TABLE.
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 rellenar sus índices. Estos son los posibles estados:
  • ADDING_FOREIGN_KEY: añade las claves externas de la tabla.
  • WAITING_FOR_COMMIT: finalizando el cambio de esquema.
  • COMMITTED: se ha confirmado el cambio de esquema para crear la tabla. No puedes escribir en la tabla hasta que se confirme el cambio.
INTERLEAVE_TYPE STRING Texto de la expresión que indica si hay una relación entre esta tabla y la tabla en la que está intercalada. Los valores posibles son:
  • IN: la tabla no tiene una relación entre tabla superior y tabla secundaria. Una fila de esta tabla puede existir independientemente de la existencia de su fila de tabla principal.
  • IN PARENT: la tabla tiene una relación principal-secundario. Una fila de esta tabla requiere la existencia de su fila de tabla principal.
  • Una cadena vacía indica que esta tabla no tiene relaciones de intercalación.
ROW_DELETION_POLICY_EXPRESSION STRING 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

Esta tabla filtrada por filas muestra las columnas de una tabla. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las columnas que cumplan uno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede 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 pormenorizado SELECT, INSERT o UPDATE se concede en la tabla que contiene 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.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre una cadena vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla de la columna. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla.
COLUMN_NAME STRING Nombre de la columna.
ORDINAL_POSITION INT64 Posición ordinal de la columna en la tabla, empezando por el valor 1.
COLUMN_DEFAULT STRING

Una representación de cadena de la expresión SQL del valor predeterminado de la columna. NULL si la columna no tiene ningún valor predeterminado.

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

DATA_TYPE STRING Se incluye para cumplir el estándar SQL. Siempre NULL. Consulta la columna SPANNER_TYPE.
IS_NULLABLE STRING Cadena que indica si la columna admite valores nulos. De acuerdo con el estándar SQL, la cadena es YES o NO, en lugar de un valor booleano.
SPANNER_TYPE STRING El tipo de datos de la columna.
IS_GENERATED STRING Cadena que indica si la columna se ha generado. La cadena es ALWAYS para una columna generada o NEVER para una columna no generada.
GENERATION_EXPRESSION STRING Cadena que representa la expresión SQL de una columna generada. NULL si la columna no es una columna generada.
IS_STORED STRING Cadena que indica si la columna generada está almacenada. La cadena siempre es YES en las columnas generadas y NULL en las no generadas.
IS_HIDDEN STRING Una cadena que se define como TRUE si la columna no aparece en una consulta SELECT * y como FALSE en caso contrario. Si la columna está oculta, puedes seleccionarla con su nombre (por ejemplo, SELECT Id, Name, ColHidden FROM TableWithHiddenColumn).
SPANNER_STATE STRING El estado actual de la columna. Una nueva columna generada almacenada que se añade a una tabla ya creada puede pasar por varios estados observables por el usuario antes de que se pueda usar por completo. Los valores posibles son:
  • WRITE_ONLY: la columna se está rellenando. No se permite la lectura.
  • COMMITTED: La columna se puede usar por completo.
IS_IDENTITY STRING Cadena que se asigna a YES si la columna generada es una columna de identidad y a NO en caso contrario.
IDENTITY_GENERATION STRING Cadena que especifica si la columna solo permite valores generados y no valores personalizados insertados por el usuario.
  • BY DEFAULT: el valor predeterminado. BY DEFAULT especifica que la columna usa valores generados si no se proporcionan valores insertados por el usuario.
  • ALWAYS: la columna solo permite valores generados, no valores personalizados insertados por el usuario.
IDENTITY_KIND STRING Siempre BIT_REVERSED_POSITITVE_SEQUENCE. Solo se admiten secuencias positivas con los bits invertidos.
IDENTITY_START_WITH_COUNTER STRING Valor inicial del contador interno antes de la transformación. Por ejemplo, el valor inicial antes de invertir los bits.
IDENTITY_SKIP_RANGE_MIN STRING Valor mínimo de un intervalo omitido después de la transformación.
IDENTITY_SKIP_RANGE_MAX STRING El valor máximo de un intervalo omitido después de la transformación.

COLUMN_PRIVILEGES

En esta tabla filtrada por filas se enumeran todos los privilegios concedidos a nivel de columna a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios de las columnas que cumplan alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede 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 pormenorizado SELECT, INSERT o UPDATE se concede en la tabla que contiene 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.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre una cadena vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla de la columna. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla que contiene la columna con privilegios.
COLUMN_NAME STRING Nombre de la columna con privilegios.
PRIVILEGE_TYPE STRING SELECT, INSERT, UPDATE
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.

TABLE_PRIVILEGES

En esta tabla filtrada por filas se enumeran todos los privilegios concedidos a nivel de tabla a los roles de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de los principales solo pueden ver los privilegios de las tablas en las que se hayan concedido al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public, cualquiera de los privilegios de control de acceso granular SELECT, INSERT, UPDATE o DELETE.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING No se usa. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla en la que se conceden los privilegios de control de acceso pormenorizado.
PRIVILEGE_TYPE STRING Uno de los valores SELECT, INSERT, UPDATE o DELETE.
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.

TABLE_CONSTRAINTS

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

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING Siempre una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING Nombre de la restricción.
TABLE_CATALOG STRING Nombre del catálogo de la tabla restringida. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla restringida. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING El nombre de la tabla restringida.
CONSTRAINT_TYPE STRING El tipo de restricción. Los valores posibles son:
  • PRIMARY KEY
  • FOREIGN KEY
  • PLACEMENT KEY
  • CHECK
  • UNIQUE
IS_DEFERRABLE STRING Siempre NO.
INITIALLY_DEFERRED STRING Siempre NO.
ENFORCED STRING NO si la restricción es una clave externa informativa (NOT ENFORCED). YES para claves externas obligatorias o cualquier otro tipo de restricción.

CONSTRAINT_TABLE_USAGE

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

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Nombre del catálogo de la tabla restringida. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla restringida. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING El nombre de la tabla restringida.
CONSTRAINT_CATALOG STRING Nombre del catálogo de la restricción. Siempre una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING Nombre de la restricción.

REFERENTIAL_CONSTRAINTS

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

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING Nombre del catálogo de la clave externa. Siempre una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la clave externa. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING Nombre de la CLAVE EXTERNA.
UNIQUE_CONSTRAINT_CATALOG STRING Nombre de catálogo de la restricción PRIMARY KEY o UNIQUE a la que hace referencia la clave externa. Siempre una cadena vacía.
UNIQUE_CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción PRIMARY KEY o UNIQUE a la que hace referencia la clave externa. Una cadena vacía si no tiene nombre.
UNIQUE_CONSTRAINT_NAME STRING El nombre de la restricción PRIMARY KEY o UNIQUE a la que hace referencia la clave externa.
MATCH_OPTION STRING Siempre SIMPLE.
UPDATE_RULE STRING Siempre NO ACTION.
DELETE_RULE STRING Puede ser CASCADE o NO ACTION.
SPANNER_STATE STRING Estado actual de la clave externa. Spanner no empieza a aplicar la restricción hasta que se crean y se rellenan los índices de reserva de la clave externa. Una vez que los índices estén listos, Spanner empezará a aplicar la restricción a las nuevas transacciones mientras valida los datos existentes. Estos son los valores posibles y los estados que representan:
  • BACKFILLING_INDEXES: se están rellenando los índices.
  • VALIDATING_DATA: se validan los datos actuales y las nuevas escrituras.
  • WAITING_FOR_COMMIT: las operaciones masivas de claves externas se han completado correctamente o no eran necesarias, pero la clave externa sigue pendiente.
  • COMMITTED: el cambio de esquema se ha confirmado.

CHECK_CONSTRAINTS

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

Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING Nombre del catálogo de la restricción. Esta columna nunca es nula, sino que siempre es una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING Nombre de la restricción. Esta columna nunca es nula. Si no se especifica explícitamente 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 nula.
SPANNER_STATE STRING El estado actual de la restricción CHECK. Esta columna nunca es nula. Estos son los posibles estados:
  • VALIDATING: Spanner está validando los datos.
  • COMMITTED: No hay ningún cambio de esquema activo para esta restricción.

KEY_COLUMN_USAGE

Esta tabla filtrada por filas contiene una fila sobre 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 entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las columnas que cumplan los siguientes criterios:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede 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 pormenorizado SELECT, INSERT o UPDATE se concede en la tabla que contiene 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.
Nombre de la columna Tipo Descripción
CONSTRAINT_CATALOG STRING Nombre del catálogo de la restricción. Siempre una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción. Esta columna nunca es nula. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING Nombre de la restricción.
TABLE_CATALOG STRING Nombre del catálogo de la columna restringida. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla de la columna restringida. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla de la columna restringida.
COLUMN_NAME STRING Nombre de la columna.
ORDINAL_POSITION INT64 Posición ordinal de la columna en la clave de la restricción. El valor inicial es 1.
POSITION_IN_UNIQUE_CONSTRAINT INT64 En el caso de los FOREIGN KEYs, la posición ordinal de la columna en la restricción única, empezando por el valor 1. Esta columna es nula para otros tipos de restricciones.

CONSTRAINT_COLUMN_USAGE

Esta tabla contiene una fila sobre cada columna usada por una restricción. Incluye las columnas PRIMARY KEY y UNIQUE, así como las columnas a las que se hace referencia en las FOREIGN KEY restricciones.

Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Nombre del catálogo de la tabla de columnas. Siempre una cadena vacía.
TABLE_SCHEMA STRING El nombre del esquema de la tabla de la columna. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla de la columna.
COLUMN_NAME STRING Nombre de la columna que usa la restricción.
CONSTRAINT_CATALOG STRING Nombre del catálogo de la restricción. Siempre una cadena vacía.
CONSTRAINT_SCHEMA STRING Nombre del esquema de la restricción. Una cadena vacía si no tiene nombre.
CONSTRAINT_NAME STRING 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 una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla.
SYNONYM_CATALOG STRING Nombre del catálogo del sinónimo.
SYNONYM_SCHEMA STRING Nombre del esquema del sinónimo.
SYNONYM_TABLE_NAME STRING Nombre de la tabla del sinónimo.

INDEXES

En esta tabla filtrada por filas se muestran los índices de la base de datos. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los índices que cumplan alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede a nivel de columna en todas las columnas del índice 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, UPDATE o DELETE se concede en la tabla que tiene el índice del 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 Nombre del catálogo. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla de índice. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla.
INDEX_NAME STRING 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 principal.
INDEX_TYPE STRING El tipo de índice. El tipo es INDEX o PRIMARY_KEY.
PARENT_TABLE_NAME STRING Los índices secundarios se pueden intercalar en una tabla principal, tal como se explica en el artículo sobre creación de un índice secundario. Esta columna contiene el nombre de esa tabla principal o una cadena vacía si el índice no está intercalado.
IS_UNIQUE BOOL Indica si las claves de índice deben ser únicas.
IS_NULL_FILTERED BOOL Indica si el índice incluye entradas con valores NULL.
INDEX_STATE STRING El estado actual del índice. Estos son los valores posibles y los estados que representan:
  • PREPARE: crear tablas vacías para un nuevo índice.
  • WRITE_ONLY: rellenar datos de un índice nuevo.
  • WRITE_ONLY_CLEANUP: limpiar un índice nuevo.
  • WRITE_ONLY_VALIDATE_UNIQUE: comprueba la singularidad de los datos en un nuevo índice.
  • READ_WRITE: funcionamiento normal del índice.
SPANNER_IS_MANAGED BOOL TRUE si Spanner gestiona el índice. De lo contrario, FALSE. Spanner gestiona los índices de reserva secundarios de las claves externas.

INDEX_COLUMNS

En esta tabla filtrada por filas se muestran las columnas de un índice. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los índices que cumplan alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede a nivel de columna en todas las columnas del índice 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 pormenorizado SELECT, INSERT o UPDATE se concede en la tabla que tiene un índice 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 Nombre del catálogo. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla de índice. El nombre está vacío en el esquema predeterminado y contiene un valor en otros esquemas. Esta columna siempre contiene un valor.
TABLE_NAME STRING Nombre de la tabla.
INDEX_NAME STRING Nombre del índice.
COLUMN_NAME STRING Nombre de la columna.
ORDINAL_POSITION INT64 Posición ordinal de la columna en el índice (o clave principal), empezando por el valor 1. Este valor es NULL para las columnas que no son de clave (por ejemplo, las columnas especificadas en la cláusula STORING de un índice).
COLUMN_ORDERING STRING 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 Cadena que indica si la columna admite valores nulos. De acuerdo con el estándar SQL, la cadena es YES o NO, no un valor booleano.
SPANNER_TYPE STRING El tipo de datos de la columna.

COLUMN_OPTIONS

En esta tabla filtrada por filas se muestran las opciones de columna en una tabla. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de los participantes solo pueden ver las opciones de las columnas que cumplan alguno de los siguientes requisitos:

  • Cualquiera de los privilegios de control de acceso pormenorizado SELECT, INSERT o UPDATE se concede 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 pormenorizado SELECT, INSERT o UPDATE se concede en la tabla que contiene 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.
Nombre de la columna Tipo Descripción
TABLE_CATALOG STRING Nombre del catálogo. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema. El nombre está vacío en el caso del esquema predeterminado y no está vacío en el caso de otros esquemas (por ejemplo, el propio INFORMATION_SCHEMA). Esta columna nunca es nula.
TABLE_NAME STRING Nombre de la tabla.
COLUMN_NAME STRING Nombre de la columna.
OPTION_NAME STRING Un identificador SQL que identifica de forma única la opción. Este identificador es la clave de la cláusula OPTIONS en DDL.
OPTION_TYPE STRING Nombre del tipo de datos del valor de esta 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 analizar el valor debe poder convertirse a OPTION_TYPE. Esta columna nunca es nula.

SEQUENCES

En esta tabla se enumeran los metadatos de las secuencias. SEQUENCES se filtra por filas en función de los privilegios de acceso detallados si un usuario con privilegios de acceso detallados consulta la tabla.

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

SEQUENCE_OPTIONS

Esta tabla contiene las opciones de configuración de las secuencias. SEQUENCE_OPTIONS se filtra por filas en función de los privilegios de acceso detallado si un usuario con privilegios de acceso detallado la consulta.

Nombre de la columna Tipo Descripción
CATALOG STRING Nombre del catálogo que contiene la secuencia.
SCHEMA STRING Nombre del esquema que contiene la secuencia.
NAME STRING Nombre de la secuencia.
OPTION_NAME STRING Nombre de la opción de secuencia.
OPTION_TYPE STRING Nombre del tipo de datos del valor de esta opción.
OPTION_VALUE STRING Valor de la opción de secuencia. La expresión que se obtiene al analizar el 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 Nombre del catálogo. Siempre una cadena vacía.
SCHEMA_NAME STRING Nombre del esquema. El nombre está vacío en el caso del esquema predeterminado y no está vacío en el caso de otros esquemas (por ejemplo, el propio INFORMATION_SCHEMA). Esta columna nunca es nula.
PACKAGE_NAME STRING Nombre del paquete de estadísticas.
ALLOW_GC BOOL FALSE si el paquete de estadísticas está exento de la recogida de elementos no utilizados; de lo contrario, TRUE.
Este atributo debe tener el valor FALSE para hacer referencia al paquete de estadísticas en una sugerencia o a través de la API de cliente.

VIEWS

En esta tabla filtrada por filas se muestran las vistas de la base de datos. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las vistas en las que se ha concedido el privilegio de SELECTcontrol de acceso pormenorizadopublic 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 Nombre del catálogo. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema. Una cadena vacía si no tiene nombre.
TABLE_NAME STRING Nombre de la vista.
VIEW_DEFINITION STRING El texto SQL de la consulta que define la vista.
SECURITY_TYPE STRING El tipo de seguridad de la vista. Puede ser INVOKER o DEFINER.

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

ROLES

En esta tabla filtrada por filas se muestran los roles de base de datos definidos para el control de acceso pormenorizado, incluidos los roles del sistema. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todos los roles de la base de datos. El resto de las entidades de seguridad solo pueden ver los roles de base de datos a los que se les ha concedido acceso directamente o por herencia.

Nombre de la columna Tipo Descripción
ROLE_NAME STRING 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 pertenencias a roles concedidas explícitamente a todos los roles de base de datos. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. Todos los demás participantes solo pueden ver las pertenencias a roles concedidas al rol de base de datos actual o a un rol del que el rol de base de datos actual sea miembro.

Como todos los roles de la base de datos son miembros del rol público, los resultados omiten los registros de la pertenencia implícita al rol público.

Nombre de la columna Tipo Descripción
ROLE_NAME STRING Nombre del rol de base de datos al que se concede esta pertenencia.
GRANTEE STRING Nombre del rol de base de datos al que se concede esta pertenencia.

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 monitorizan toda la base de datos y cuáles monitorizan tablas o columnas específicas. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los flujos de cambios en los que se haya concedido el privilegio de control de acceso granular SELECT al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Nombre del catálogo del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_SCHEMA STRING Nombre del esquema de este flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios.
ALL BOOL TRUE si este flujo de cambios monitoriza toda la base de datos. FALSE si este flujo de cambios monitoriza 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 monitorizan. Cada fila describe una tabla y un flujo de cambios. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las filas de los flujos de cambios en los que se ha concedido 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 los flujos de cambios que monitorizan toda la base de datos.

Nombre de la columna Tipo Descripción
CHANGE_STREAM_CATALOG STRING Nombre del catálogo del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_SCHEMA STRING Nombre del esquema del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios al que hace referencia esta fila.
TABLE_CATALOG STRING Nombre del catálogo de la tabla. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla. Siempre una cadena vacía.
TABLE_NAME STRING Nombre de la tabla a la que hace referencia esta fila.
ALL_COLUMNS BOOL TRUE si el flujo de cambios de esta fila monitoriza la totalidad de la tabla a la que hace referencia. De lo 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 monitorizan. Cada fila describe un flujo de cambios y una columna. Si un flujo de cambios monitoriza una tabla completa, las columnas de esa tabla no se muestran en esta vista.

Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las filas de los flujos de cambios en los que se ha concedido 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 Nombre del catálogo del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_SCHEMA STRING Nombre del esquema del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios.
TABLE_CATALOG STRING Nombre del catálogo de la tabla. Siempre una cadena vacía.
TABLE_SCHEMA STRING Nombre del esquema de la tabla. Siempre una cadena vacía.
TABLE_NAME STRING Nombre de la tabla a la que hace referencia esta fila.
COLUMN_NAME STRING 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. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las opciones de los flujos de cambios en los que se ha concedido 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 Nombre del catálogo del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_SCHEMA STRING Nombre del esquema del flujo de cambios. Siempre una cadena vacía.
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios.
OPTION_NAME STRING El nombre de la opción de flujo de cambios.
OPTION_TYPE STRING El tipo de datos de la opción de flujo de cambios.
OPTION_VALUE STRING 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 pormenorizado concedidos en todos los flujos de cambios a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en los flujos de cambios 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 El nombre del catálogo que contiene el flujo de cambios (una cadena vacía).
CHANGE_STREAM_SCHEMA STRING El nombre del esquema que contiene el flujo de cambios (una cadena vacía).
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios.
PRIVILEGE_TYPE STRING SELECT (el único privilegio permitido para los flujos de cambios).
GRANTEE STRING Nombre del rol de base de datos al que se concede este privilegio.

ROUTINES

En esta tabla filtrada por filas se enumeran todas las funciones de lectura de flujos de cambios de una base de datos. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las funciones de lectura de los flujos de cambios en las que se haya concedido el privilegio de control de acceso granular EXECUTE al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public.

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

ROUTINE_OPTIONS

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

Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver las opciones de las funciones de lectura de flujo de cambios en las que se ha concedido el privilegio de EXECUTEcontrol de acceso granularpublic 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 Nombre del catálogo de la rutina. Siempre una cadena vacía.
SPECIFIC_SCHEMA STRING El nombre del esquema de la rutina. Siempre una cadena vacía.
SPECIFIC_NAME STRING El nombre de la rutina. Identifica de forma exclusiva la rutina en caso de sobrecarga de nombres.
OPTION_NAME STRING Un identificador SQL que identifica de forma única la opción.
OPTION_TYPE STRING 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

En esta tabla filtrada por filas se definen los argumentos de cada función de lectura de flujo de cambios. Cada fila describe un argumento de una función de lectura de flujo de cambios.

Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los parámetros de las funciones de lectura de la secuencia de cambios en las que se haya concedido el privilegio de EXECUTEcontrol de acceso granularEXECUTE al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Nombre del catálogo de la rutina. Siempre una cadena vacía.
SPECIFIC_SCHEMA STRING El nombre del esquema de la rutina. Siempre una cadena vacía.
SPECIFIC_NAME STRING El nombre de la rutina. Identifica de forma exclusiva la rutina en caso de sobrecarga de nombres.
ORDINAL_POSITION INT64 La posición ordinal del parámetro en la rutina, empezando por el valor 1.
PARAMETER_NAME STRING El nombre del parámetro.
DATA_TYPE STRING El tipo de datos del parámetro.
PARAMETER_DEFAULT STRING El valor predeterminado del parámetro o NULL para los parámetros que no tienen un valor predeterminado.

ROUTINE_PRIVILEGES

En esta tabla filtrada por filas se enumeran todos los privilegios de control de acceso pormenorizado concedidos en todas las funciones de lectura de secuencias de cambios a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en las funciones de lectura de la secuencia de cambios al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public.

Nombre de la columna Tipo Descripción
SPECIFIC_CATALOG STRING Nombre del catálogo de la rutina. Siempre una cadena vacía.
SPECIFIC_SCHEMA STRING El nombre del esquema de la rutina. Siempre una cadena vacía.
SPECIFIC_NAME STRING El nombre de la rutina. Identifica de forma exclusiva la rutina en caso de sobrecarga de nombres.
PRIVILEGE_TYPE STRING Siempre EXECUTE.
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.

ROLE_TABLE_GRANTS

En esta tabla filtrada por filas se enumeran todos los privilegios de control de acceso pormenorizado concedidos en todas las tablas y vistas a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en 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 Nombre del rol de la base de datos al que se concede este privilegio.
TABLE_CATALOG STRING No se usa. Siempre una cadena vacía.
TABLE_SCHEMA STRING No se usa. Siempre una cadena vacía.
TABLE_NAME STRING Nombre de la tabla o de la vista.
PRIVILEGE_TYPE STRING 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 pormenorizado concedidos en todas las columnas a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos 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 hereda la columna de la tabla o vista que la contiene.

Nombre de la columna Tipo Descripción
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.
TABLE_CATALOG STRING No se usa. Siempre una cadena vacía.
TABLE_SCHEMA STRING No se usa. Siempre una cadena vacía.
TABLE_NAME STRING Nombre de la tabla o de la vista que contiene la columna.
COLUMN_NAME STRING Nombre de la columna en la que se concede el privilegio.
PRIVILEGE_TYPE STRING 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 muestran los privilegios SELECT concedidos en todos los flujos de cambios a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en los flujos 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 una cadena vacía.
CHANGE_STREAM_SCHEMA STRING Nombre del esquema que contiene el flujo de cambios.
CHANGE_STREAM_NAME STRING Nombre del flujo de cambios.
PRIVILEGE_TYPE STRING Tipo de privilegio (solo SELECT).
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.

ROLE_MODEL_GRANTS

En esta tabla filtrada por filas se enumeran todos los privilegios de control de acceso pormenorizado concedidos en todos los modelos a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en 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 Nombre del rol de la base de datos al que se concede este privilegio.
MODEL_CATALOG STRING No se usa. Siempre una cadena vacía.
MODEL_SCHEMA STRING No se usa. Siempre una cadena vacía.
MODEL_NAME STRING El nombre del modelo.
PRIVILEGE_TYPE STRING 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 de EXECUTE concedidos en todas las funciones de lectura de secuencias de cambios a cualquier rol de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios concedidos en las funciones de lectura de la secuencia 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
GRANTOR STRING No se usa. Siempre NULL.
GRANTEE STRING Nombre del rol al que se concede el privilegio.
SPECIFIC_CATALOG STRING Nombre del catálogo de rutinas.
SPECIFIC_SCHEMA STRING Nombre del esquema de rutina.
SPECIFIC_NAME STRING El nombre de la rutina. Identifica de forma exclusiva la rutina en caso de sobrecarga de nombres.
PRIVILEGE_TYPE STRING El tipo de privilegio concedido. Siempre EXECUTE.
IS_GRANTABLE STRING No se usa. Siempre NO.

MODELS

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

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Nombre del catálogo. Siempre una cadena vacía.
MODEL_SCHEMA STRING El nombre del esquema de este modelo. Siempre una cadena 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 gestionado.

MODEL_OPTIONS

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

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

MODEL_COLUMNS

En esta tabla se enumeran las columnas de un modelo.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Nombre del catálogo. Siempre una cadena vacía.
MODEL_SCHEMA STRING El nombre del esquema de este modelo. Siempre una cadena vacía.
MODEL_NAME STRING El nombre del modelo.
COLUMN_KIND STRING Tipo de columna de modelo. Una de las siguientes opciones: "INPUT" o "OUTPUT".
COLUMN_NAME STRING Nombre de la columna.
DATA_TYPE STRING El tipo de datos SQL estándar de la columna.
ORDINAL_POSITION INT64 Posición ordinal de la columna, empezando por el valor 1, para conservar el orden de las columnas declaradas.
IS_EXPLICIT BOOL TRUE si la columna se ha especificado explícitamente en el DDL. FALSE si la columna se ha descubierto en el endpoint.

MODEL_COLUMN_OPTIONS

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

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING Nombre del catálogo. Siempre una cadena vacía.
MODEL_SCHEMA STRING El nombre del esquema de este modelo. Siempre una cadena vacía.
MODEL_NAME STRING El nombre del modelo.
COLUMN_KIND STRING Tipo de columna de modelo. Una de las siguientes opciones: "INPUT" o "OUTPUT".
COLUMN_NAME STRING Nombre de la columna.
OPTION_NAME STRING El nombre de la opción de columna de modelo.
OPTION_TYPE STRING El tipo de datos de la opción de columna del modelo.
OPTION_VALUE STRING Valor de la opción de columna de modelo.

MODEL_PRIVILEGES

En esta tabla, que se ha filtrado por filas, se muestran todos los privilegios concedidos a nivel de modelo a los roles de base de datos, incluido public. Las entidades de seguridad con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades de seguridad a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de las entidades solo pueden ver los privilegios de los modelos en los que se haya concedido el privilegio de EXECUTEcontrol de acceso granular al rol de base de datos actual, a los roles de los que el rol de base de datos actual sea miembro o a public.

Nombre de la columna Tipo Descripción
MODEL_CATALOG STRING No se usa. Siempre una cadena vacía.
MODEL_SCHEMA STRING No se usa. Siempre una cadena vacía.
MODEL_NAME STRING Nombre del modelo en el que se conceden privilegios de control de acceso pormenorizado.
PRIVILEGE_TYPE STRING EXECUTE>
GRANTEE STRING Nombre del rol de la base de datos al que se concede este privilegio.

PROPERTY_GRAPHS

En esta tabla filtrada por filas se muestran los gráficos de propiedades de la base de datos. Las entidades con permisos de gestión de identidades y accesos a nivel de base de datos y las entidades a las que se les ha concedido acceso al rol de sistema spanner_info_reader o a los miembros de ese rol pueden ver todas las filas de esta vista. El resto de los principales solo pueden ver los gráficos de propiedades si cumplen 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 Nombre del catálogo. Siempre una cadena vacía.
PROPERTY_GRAPH_SCHEMA STRING Nombre del esquema. Una cadena vacía si no tiene nombre.
PROPERTY_GRAPH_NAME STRING Nombre del gráfico 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 Nombre del catálogo. Siempre una cadena vacía.
schema string Nombre del esquema. Una cadena vacía si no tiene nombre.
name string Nombre del gráfico de propiedades.
nodeTables array<object> Lista de objetos GraphElementTable de los nodos.
edgeTables array<object> Lista de objetos GraphElementTable para los bordes.
labels array<object> Lista de objetos GraphElementLabel.
propertyDeclarations array<object> Lista de objetos GraphPropertyDeclaration.
GraphElementTable name string Nombre de la tabla de elementos del gráfico.
kind string Puede ser NODE o EDGE.
baseCatalogName string Nombre del catálogo que contiene la tabla base.
baseSchemaName string Nombre del esquema que contiene la tabla base.
baseTableName string Nombre de la tabla de entrada a partir de la que se crean los elementos.
keyColumns array<string> Los nombres de las columnas que constituyen la clave del elemento.
labelNames array<string> Nombres de las etiquetas asociadas a esta tabla de elementos.
propertyDefinitions array<object> Lista de objetos GraphPropertyDefinition.
dynamicLabelExpr string Nombre de la columna que contiene la definición de DYNAMIC LABEL.
dynamicPropertyExpr string Nombre de la columna que contiene la definición de DYNAMIC PROPERTIES.
sourceNodeTable object Objeto GraphNodeTableReference. Solo existe cuando kind es EDGE.
destinationNodeTable object Objeto GraphNodeTableReference. Solo existe cuando kind es EDGE.
GraphNodeTableReference nodeTableName string Nombre de la tabla de elementos del gráfico.
edgeTableColumns array<string> Nombre de las columnas asociadas a las claves de origen y destino de las aristas.
nodeTableColumns array<string> Nombre de las columnas asociadas a las claves de origen y destino de los nodos.
GraphElementLabel name string El nombre de la etiqueta.
propertyDeclarationNames array<string> Nombres de las propiedades asociadas a esta etiqueta.
GraphPropertyDeclaration name string Nombre de la propiedad.
type string El tipo de propiedad.
GraphPropertyDefinition propertyDeclarationName string Nombre de la propiedad.
valueExpressionSql string Expresión que define la propiedad.

Ejemplos

Devuelve información sobre cada tabla del esquema del usuario:

SELECT
  t.table_schema,
  t.table_name,
  t.parent_table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema NOT IN ('information_schema', 'SPANNER_SYS')
  AND t.table_type = 'BASE TABLE'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name

Devuelve el nombre de todas las tablas de INFORMATION_SCHEMA:

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

Devuelve información sobre las columnas de la tabla de usuarios MyTable del esquema predeterminado:

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

Devuelve información sobre la región líder predeterminada de la base de datos. Devuelve un valor vacío si no se ha definido la región líder predeterminada:

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

Devuelve información sobre cada índice del esquema del usuario:

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

Devuelve todas las columnas que usan opciones distintas a las predeterminadas:

SELECT
  t.table_schema,
  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 NOT IN ('information_schema', 'SPANNER_SYS')

Devuelve las opciones de base de datos relacionadas con el optimizador actual:

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')

Devuelve todos los paquetes de estadísticas disponibles:

SELECT
  *
FROM
  information_schema.spanner_statistics;

Devuelve todas las secuencias:

SELECT
  *
FROM
  information_schema.sequences;

Devuelve todas las opciones de secuencia de la secuencia llamada "MySequence".

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

Devuelve 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

Devuelve 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

Siguientes pasos