Un schéma d'informations est un schéma intégré commun à toutes les bases de données PostgreSQL. Vous pouvez exécuter des requêtes SQL sur des tables de information_schema
afin de récupérer les métadonnées de schéma d'une base de données.
Par exemple, la requête suivante récupère le nom de toutes les tables définies par l'utilisateur dans une base de données :
SELECT
table_name
FROM
information_schema.tables
WHERE
table_schema = 'public'
Utilisation
Les tables
information_schema
ne sont disponibles que via des interfaces SQL, par exemple:- L'API
executeQuery
- La commande
gcloud spanner databases execute-sql
- Page Requête d'une base de données dans la console Google Cloud
Les autres méthodes de lecture unique ne sont pas compatibles avec
information_schema
.- L'API
- Les requêtes lancées sur
information_schema
peuvent utiliser des limites d'horodatage fortes, d'obsolescence limitée ou d'obsolescence exacte. - Si vous utilisez une base de données en dialecte GoogleSQL, consultez la section Schéma d'informations pour les bases de données en dialecte GoogleSQL.
Différences avec information_schema
pour PostgreSQL
Les tables de information_schema
pour les bases de données en dialecte PostgreSQL incluent les colonnes des tables de information_schema
pour PostgreSQL Open Source et, dans certains cas, les colonnes de Spanner. Dans ces tables, les colonnes PostgreSQL Open Source viennent en premier et dans le même ordre que pour une base de données PostgreSQL Open Source. Les colonnes distinctes pour Spanner sont ajoutées par la suite. Les requêtes écrites pour la version PostgreSQL Open Source de information_schema
devraient fonctionner sans modification lorsque vous utilisez des bases de données en dialecte PostgreSQL dans la CLI Google Cloud.
Voici d'autres différences notables dans les information_schema
pour les bases de données en dialecte PostgreSQL:
- Certaines des colonnes de table pour PostgreSQL Open Source sont disponibles, mais pas renseignées dans les bases de données en dialecte PostgreSQL.
- Les bases de données utilisant le dialecte PostgreSQL utilisent
public
comme nom de schéma par défaut. - Les noms de contraintes générés automatiquement utilisent un format différent de celui des bases de données PostgreSQL Open Source.
- Les tables liées aux fonctionnalités PostgreSQL Open Source qui ne sont pas compatibles avec les bases de données en dialecte PostgreSQL ne sont pas disponibles.
- Certaines tables disponibles avec Spanner, mais pas avec PostgreSQL Open Source, telles que
database_options
,index_columns
,indexes
etspanner_statistics
, sont disponibles.
Filtrage des lignes dans les tables et les vues information_schema
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
(ou aux membres de ce rôle) a été accordé peuvent voir toutes les lignes de toutes les tables et vues information_schema
. Pour les autres principaux, Spanner filtre les lignes en fonction du rôle de base de données actuel. Les descriptions des tables et des vues dans les sections suivantes indiquent comment Spanner filtre les lignes pour chaque table et vue.
Tables dans information_schema
pour les bases de données en dialecte PostgreSQL
Les tables et les vues de la information_schema
sont compatibles avec les tables et les vues de la information_schema
de PostgreSQL Open Source.
Les sections suivantes décrivent les tables et les vues de information_schema
pour les bases de données en dialecte PostgreSQL.
applicable_roles
Cette vue filtrée par ligne liste tous les appartenances à des rôles explicitement accordées à tous les rôles de base de données. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les appartenances aux rôles accordées au rôle de base de données actuel ou à un rôle dont le rôle de base de données actuel est membre.
Étant donné que tous les rôles de base de données sont membres du rôle public, les résultats omettent les enregistrements pour l'appartenance implicite au rôle public.
Nom de colonne | Type | Description |
---|---|---|
grantee |
character varying |
Nom du rôle de base de données auquel l'appartenance est accordée. |
role_name |
character varying |
Nom du rôle de base de données parent dans lequel cette appartenance est accordée. |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
change_stream_columns
Cette vue filtrée par ligne contient des informations sur les colonnes de la table et les flux de modifications qui les surveillent. Chaque ligne décrit un flux de modifications et une colonne. Si un flux de modifications suit une table entière, les colonnes de cette table ne s'affichent pas dans cette vue.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les lignes des flux de modifications pour lesquels le droit SELECT
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma du flux de modifications. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
change_stream_name |
character varying |
Nom du flux de modifications. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma de la table. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
table_name |
character varying |
Nom de la table à laquelle cette ligne fait référence. |
column_name |
character varying |
Nom de la colonne à laquelle cette ligne fait référence. |
change_stream_options
Cette vue filtrée par ligne contient les options de configuration des flux de modifications.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les options pour les flux de modifications sur lesquels le droit SELECT
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma du flux de modifications. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
change_stream_name |
character varying |
Nom du flux de modifications. |
option_name |
character varying |
Nom de l'option de flux de modifications. |
option_type |
character varying |
Type de données de l'option de flux de modifications. |
option_value |
character varying |
Valeur de l'option de flux de modifications. |
change_stream_privileges
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés sur tous les flux de modifications à n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les flux de modifications au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma contenant le flux de modifications.
La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
change_stream_name |
character varying |
Nom du flux de modifications. |
privilege_type |
character varying |
Type de privilège (SELECT uniquement). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
change_stream_tables
Cette vue filtrée par ligne contient des informations sur les tables et les flux de modifications qui les surveillent. Chaque ligne décrit un tableau et un flux de modifications. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres comptes principaux ne peuvent voir que les lignes des flux de modifications pour lesquels le privilège SELECT
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Les données de change_stream_tables
n'incluent pas les relations implicites entre les tables et les flux de modifications qui suivent l'ensemble de la base de données.
Nom de la colonne | Type | Description |
---|---|---|
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma du flux de modifications. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
change_stream_name |
character varying |
Nom du flux de modifications auquel cette ligne fait référence. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma de la table. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
table_name |
character varying |
Nom de la table à laquelle cette ligne fait référence. |
all_columns |
character varying |
YES si le flux de modifications de cette ligne suit l'intégralité du tableau auquel elle fait référence. Dans le cas contraire, cette valeur est définie sur NO . Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
change_streams
Cette vue filtrée par ligne liste tous les flux de modifications d'une base de données et indique ceux qui suivent l'ensemble de la base de données par rapport à des tables ou des colonnes spécifiques. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les flux de modifications pour lesquels le privilège de contrôle des accès précis SELECT
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma de ce flux de modifications. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
change_stream_name |
character varying |
Nom du flux de modifications. |
all |
character varying |
YES si ce flux de modifications suit l'intégralité de la base de données.
NO si ce flux de modifications suit des tables ou des colonnes spécifiques.
Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
check_constraints
La vue check_constraints
contient une ligne pour chaque contrainte de vérification définie par le mot clé CHECK
ou NOT NULL
.
Nom de la colonne | Type | Description |
---|---|---|
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma de la contrainte. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
constraint_name |
character varying |
Nom de la contrainte. Si le nom de la contrainte n'est pas explicitement spécifié dans le schéma, le nom généré automatiquement est utilisé. |
check_clause |
character varying |
Expression de la contrainte de vérification. |
spanner_state |
character varying |
État actuel de la contrainte de vérification. Les états possibles sont les suivants :
|
column_column_usage
Cette vue liste toutes les colonnes générées qui dépendent d'une autre colonne de base de la même table.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table. Le nom est public pour le schéma par défaut et non vide pour les autres schémas (par exemple, information_schema ). Cette colonne n'est jamais nulle. |
table_name |
character varying |
Nom de la table contenant les colonnes générées. |
column_name |
character varying |
Nom de la colonne de base sur laquelle la colonne générée dépend. |
dependent_column |
character varying |
Nom de la colonne générée. |
column_options
Cette vue répertorie toutes les options définies pour les colonnes de table référencées d'une contrainte de clé étrangère. La vue ne contient que les colonnes de la table de référence auxquelles l'utilisateur actuel a accès (en tant que propriétaire ou en raison d'autorisations accordées).
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table étrangère. Le nom est public pour le schéma par défaut et non vide pour les autres schémas (par exemple, information_schema ). Cette colonne n'est jamais nulle. |
table_name |
character varying |
Nom de la table étrangère. |
column_name |
character varying |
Nom de la colonne. |
option_name |
character varying |
Identifiant SQL qui identifie l'option de manière unique. Il est la clé de la clause OPTIONS en DDL.
|
option_value |
character varying |
Littéral SQL décrivant la valeur de cette option. La valeur de cette colonne est analysable dans le cadre d'une requête. |
option_type |
character varying |
Nom de type de données qui correspond au type de cette valeur d'option. |
column_privileges
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés à toutes les colonnes pour n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les colonnes au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
La vue inclut les droits SELECT
, INSERT
et UPDATE
que la colonne hérite de la table ou de la vue qui la contient.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table ou la vue. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
table_name |
character varying |
Nom de la table ou de la vue contenant la colonne. |
column_name |
character varying |
Nom de la colonne. |
privilege_type |
character varying |
Type de privilège (SELECT , INSERT ou UPDATE ). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
columns
Cette vue filtrée par ligne fournit des informations sur toutes les colonnes de table et les colonnes de vue de la base de données. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les colonnes auxquelles des droits de contrôle des accès précis sont accordés (ou les droits SELECT
, INSERT
ou UPDATE
accordés aux tables qui les contiennent) au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table. Le nom est public pour le schéma par défaut et non vide pour les autres schémas (par exemple, information_schema ). Cette colonne n'est jamais nulle. |
table_name |
character varying |
Nom de la table |
column_name |
character varying |
Nom de la colonne |
ordinal_position |
BIGINT |
Position ordinale de la colonne dans le tableau, commençant par la valeur 1 |
column_default |
character varying |
Représentation sous forme de chaîne de l'expression PostgreSQL Open Source de la valeur par défaut de la colonne, par exemple '9'::bigint .
|
is_nullable |
character varying |
Chaîne qui indique si la colonne peut être vide. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
data_type |
character varying |
Type de données de la colonne. La valeur est l'une des suivantes :
|
character_maximum_length |
BIGINT |
Longueur maximale déclarée pour les types de données de chaîne de caractères et de bits. Si aucune longueur maximale n'a été spécifiée, la valeur est NULL . Si le type de données de la colonne n'est pas une chaîne de caractères ou de bits, la valeur est NULL . |
character_octet_length |
BIGINT |
Non utilisé. La valeur est toujours NULL . |
numeric_precision |
BIGINT |
Précision du type de données numériques de la colonne actuelle.
Pour double precision , la valeur est 53. Pour bigint , la valeur est 64.
Pour tous les autres types de données, la valeur est NULL . |
numeric_precision_radix |
BIGINT |
Base (unité) de la précision pour les types numériques. Seules deux valeurs sont acceptées :
NULL . |
numeric_scale |
BIGINT |
Inclut l'échelle du type de colonne numérique, qui correspond au nombre d'unités de base de précision après le point de base. Pour bigint , la valeur est 0.
Pour tous les autres types de données, la valeur est NULL . |
datetime_precision |
BIGINT |
Non utilisé. La valeur est toujours NULL . |
interval_type |
character varying |
Non utilisé. La valeur est toujours NULL . |
interval_precision |
BIGINT |
Non utilisé. La valeur est toujours NULL . |
character_set_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
domain_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
domain_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
domain_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
maximum_cardinality |
BIGINT |
Non utilisé. La valeur est toujours NULL . |
dtd_identifier |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_self_referencing |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_identity |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_generation |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_start |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_increment |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_maximum |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_minimum |
character varying |
Non utilisé. La valeur est toujours NULL . |
identity_cycle |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_generated |
character varying |
Chaîne qui indique si la colonne est générée. La chaîne peut être soit ALWAYS pour une colonne générée, soit NEVER pour une colonne non générée. |
generation_expression |
character varying |
Chaîne représentant l'expression SQL d'une colonne générée, ou NULL si la colonne n'est pas une colonne générée. |
is_updatable |
character varying |
Non utilisé. La valeur est toujours NULL . |
spanner_type |
character varying |
Chaîne contenant le type compatible avec le DDL de la colonne. |
is_stored |
character varying |
Chaîne qui indique si la colonne générée est stockée.
La chaîne est toujours YES ou NO pour les colonnes générées, et NULL pour les colonnes non générées. |
spanner_state |
character varying |
État actuel de la colonne. Une nouvelle colonne générée stockée dans une table existante peut passer par plusieurs états observables par l'utilisateur avant d'être entièrement utilisable. Les valeurs possibles du champ sont les suivantes :
|
constraint_column_usage
Cette vue contient une ligne pour chaque colonne utilisée par une contrainte.
- Pour les contraintes
PRIMARY KEY
etCHECK
définies par le mot cléNOT NULL
, la vue contient ces colonnes. - Pour les contraintes
CHECK
créées avec le mot cléCHECK
, la vue inclut les colonnes utilisées par l'expression de contrainte de vérification. - Pour les contraintes de clé étrangère, la vue contient les colonnes de la table référencée.
- Pour les contraintes
UNIQUE
, la vue contient les colonnes deKEY_COLUMN_USAGE
.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table contenant la colonne utilisée par la contrainte. |
table_name |
character varying |
Nom de la table contenant la colonne utilisée par la contrainte. |
column_name |
character varying |
Nom de la colonne utilisée par la contrainte. |
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma de la contrainte. |
constraint_name |
character varying |
Nom de la contrainte. |
constraint_table_usage
Cette vue contient une ligne pour chaque table utilisée par une contrainte. Pour les contraintes FOREIGN
KEY
, les informations de table concernent les tables de la clause REFERENCES
. Pour une contrainte de clé primaire ou unique, cette vue identifie la table à laquelle la contrainte appartient. Les contraintes de vérification et les contraintes de non-valeur nulle ne sont pas incluses dans cette vue.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma de la table avec des contraintes. |
table_name |
character varying |
Nom de la table utilisée par une contrainte. |
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma contenant la contrainte. |
constraint_name |
character varying |
Nom de la contrainte. |
database_options
Ce tableau répertorie les options définies sur la base de données.
Nom de la colonne | Type | Description |
---|---|---|
catalog_name |
character varying |
Nom de la base de données. |
schema_name |
character varying |
Nom du schéma. La valeur par défaut est public pour les bases de données au format PostgreSQL. |
option_name |
character varying |
Nom de l'option de base de données. Il s'agit de la valeur de key dans la clause OPTIONS en DDL. |
option_type |
character varying |
Type de données de l'option de base de données. |
option_value |
character varying |
Valeur de l'option de base de données. |
enabled_roles
Cette vue filtrée par ligne liste les rôles de base de données définis. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir tous les rôles de base de données. Tous les autres principaux ne peuvent voir que les rôles de base de données auxquels ils ont été autorisés à accéder directement ou par héritage. Tous les rôles système, à l'exception de public
, apparaissent également dans cette vue.
Nom de colonne | Type | Description |
---|---|---|
role_name |
character varying |
Nom du rôle. |
spanner_is_system |
character varying |
YES si le rôle est un rôle système. Sinon, NO . |
index_columns
Cette vue répertorie les colonnes d'un index.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant l'index. La valeur par défaut est public . |
table_name |
character varying |
Nom de la table associée à l'index. |
index_name |
character varying |
Nom de l'index. Les tables dotées d'une spécification PRIMARY KEY possèdent une entrée de pseudo-index générée avec le nom PRIMARY_KEY . |
index_type |
character varying |
Type d'index. Les valeurs possibles sont PRIMARY_KEY , LOCAL ou GLOBAL . |
column_name |
character varying |
Nom de la colonne. |
ordinal_position |
BIGINT |
La position ordinale de la colonne dans l'index (ou clé primaire), commençant par la valeur 1. Cette valeur est NULL pour les colonnes non clés (par exemple, les colonnes spécifiées dans la clause INCLUDE d'un index). |
column_ordering |
character varying |
Ordre de tri de la colonne. La valeur correspond à ASC ou à DESC pour les colonnes de clé, et à NULL pour les colonnes autres que de clé (par exemple, les colonnes spécifiées dans la clause STORING d'un index). |
is_nullable |
character varying |
Chaîne qui indique si la colonne peut être vide. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
spanner_type |
character varying |
Chaîne contenant le type compatible avec le DDL de la colonne. |
indexes
Cette vue répertorie les index d'un schéma.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma. La valeur par défaut est public . |
table_name |
character varying |
Nom de la table. |
index_name |
character varying |
Nom de l'index. Les tables créées avec une clause PRIMARY KEY possèdent une entrée de pseudo-index générée avec le nom PRIMARY_KEY , ce qui permet d'identifier les champs de la clé primaire. |
index_type |
character varying |
Type d'index. Les valeurs possibles sont PRIMARY_KEY , LOCAL ou GLOBAL . |
parent_table_name |
character varying |
Les index secondaires peuvent être entrelacés dans une table parente, comme expliqué dans la section Créer un index secondaire. Cette colonne contient le nom de la table parente ou une chaîne vide si l'index n'est pas entrelacé. |
is_unique |
character varying |
Si les clés d'index doivent être uniques. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
is_null_filtered |
character varying |
Si l'index inclut des entrées dotées de valeurs NULL . Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
index_state |
character varying |
État actuel de l'index. Voici les valeurs possibles et les états qu'elles représentent :
|
spanner_is_managed |
character varying |
Indique si l'index est géré par Spanner. Par exemple, les index de stockage secondaires pour les clés étrangères sont gérés par Spanner. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
information_schema_catalog_name
Ce tableau contient une ligne et une colonne contenant le nom de la base de données.
Nom de la colonne | Type | Description |
---|---|---|
catalog_name |
character varying |
Nom de la base de données. |
key_column_usage
Cette vue identifie toutes les colonnes de la base de données actuelle qui sont référencées par une contrainte de clé primaire, de clé unique ou de clé étrangère. Pour en savoir plus sur les colonnes de contraintes CHECK
, consultez la vue check_constraints
.
Nom de la colonne | Type | Description |
---|---|---|
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma de la contrainte. La valeur par défaut est public . |
constraint_name |
character varying |
Nom de la contrainte. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table contenant la colonne avec des contraintes. La valeur par défaut est public . |
table_name |
character varying |
Nom de la table contenant la colonne limitée par cette contrainte. |
column_name |
character varying |
Nom de la colonne avec des contraintes. |
ordinal_position |
BIGINT |
Position ordinale de la colonne dans la clé de la contrainte, commençant par la valeur 1 . |
position_in_unique_constraint |
BIGINT |
Pour la valeur FOREIGN KEY , la position ordinale de la colonne dans la contrainte unique, commençant par la valeur 1 . Cette colonne affiche une valeur NULL pour les autres types de contraintes. |
parameters
Cette vue filtrée par ligne définit les arguments pour chaque fonction de lecture du flux de modifications. Chaque ligne décrit un argument pour une fonction de lecture du flux de modifications.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les paramètres des fonctions de lecture du flux de modifications sur lesquels l'autorisation de contrôle des accès précis EXECUTE
est accordée au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
specific_catalog |
character varying |
Nom de la base de données. |
specific_schema |
character varying |
Nom du schéma de la routine. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
specific_name |
character varying |
Nom de la routine. Identifie de manière unique la routine, même si son nom est surchargé. |
ordinal_position |
bigint |
Position ordinale du paramètre dans la liste d'arguments de la routine, commençant par la valeur 1. |
parameter_mode |
character varying |
Non utilisé. Toujours NULL . |
is_result |
character varying |
Non utilisé. Toujours NULL . |
as_locator |
character varying |
Non utilisé. Toujours NULL . |
parameter_name |
character varying |
Nom du paramètre. |
data_type |
character varying |
Type de données du paramètre. La valeur est l'une des suivantes:
|
character_maximum_length |
bigint |
Non utilisé. Toujours NULL . |
character_octet_length |
bigint |
Non utilisé. La valeur est toujours NULL . |
character_set_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
numeric_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
numeric_precision_radix |
bigint |
Non utilisé. La valeur est toujours NULL . |
numeric_scale |
bigint |
Non utilisé. La valeur est toujours NULL . |
datetime_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
interval_type |
character varying |
Non utilisé. La valeur est toujours NULL . |
interval_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
udt_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
maximum_cardinality |
bigint |
Non utilisé. La valeur est toujours NULL . |
dtd_identifier |
character varying |
Non utilisé. La valeur est toujours NULL . |
parameter_default |
character varying |
Non utilisé. La valeur est toujours NULL . |
placements
Ce tableau répertorie les emplacements de la base de données.
Nom de la colonne | Type | Description |
---|---|---|
placement_name |
character varying |
Nom de l'emplacement. |
is_default |
character varying |
Chaîne qui indique si la colonne peut être vide. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
placement-options
Pour chaque emplacement, ce tableau répertorie les options définies sur l'emplacement dans la clause OPTIONS
de l'instruction CREATE PLACEMENT
.
Nom de la colonne | Type | Description |
---|---|---|
placement_name |
character varying |
Nom de l'emplacement. |
option_name |
character varying |
Nom de l'option d'emplacement. Voici les valeurs valides pour option_name :
|
option_type |
character varying |
Type de données de l'option d'emplacement. |
option_value |
character varying |
Valeur de l'option d'emplacement. Pour instance_partition , il s'agit du nom de la partition de l'instance. Pour default_leader , il s'agit du nom de la région principale par défaut. |
referential_constraints
Cette vue contient une ligne pour chaque contrainte FOREIGN KEY
. Vous ne pouvez voir que les contraintes pour lesquelles vous disposez d'un accès en écriture à la table de référence. Cette vue identifie également les contraintes PRIMARY KEY
et UNIQUE
sur les tables référencées que les clés étrangères utilisent pour l'application des contraintes et les actions de référence.
Nom de la colonne | Type | Description |
---|---|---|
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma contenant la contrainte de clé étrangère. La valeur par défaut est public . |
constraint_name |
character varying |
Nom de la contrainte de clé étrangère. |
unique_constraint_catalog |
character varying |
Nom de la base de données. |
unique_constraint_schema |
character varying |
Nom du schéma contenant la contrainte de clé primaire ou unique référencée par la contrainte de clé étrangère. |
unique_constraint_name |
character varying |
Nom de la contrainte de clé primaire ou unique référencée par la contrainte de clé étrangère. |
match_option |
character varying |
Méthode de correspondance utilisée par la contrainte de clé étrangère. La valeur est toujours NONE .
|
update_rule |
character varying |
Règle de mise à jour de la contrainte de clé étrangère. Cette valeur est toujours NO ACTION .
|
delete_rule |
character varying |
Règle de suppression de la contrainte de clé étrangère. Cette valeur est CASCADE ou NO ACTION . |
spanner_state |
character varying |
État actuel de la clé étrangère. Spanner ne commence à appliquer la contrainte que lorsque les index de stockage de la clé étrangère sont créés et remplis. Une fois les index prêts, Spanner commence à appliquer la contrainte pour les nouvelles transactions tout en validant les données existantes. Voici les valeurs possibles et les états qu'elles représentent :
|
role_change_stream_grants
Cette vue filtrée par ligne liste les droits SELECT
accordés sur tous les flux de modifications à n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les flux de modifications au rôle de base de données actuel et aux rôles dont le rôle de base de données actuel est membre, à l'exception de public
.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
change_stream_catalog |
character varying |
Nom de la base de données. |
change_stream_schema |
character varying |
Nom du schéma contenant le flux de modifications.
La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
change_stream_name |
character varying |
Nom du flux de modifications. |
privilege_type |
character varying |
Type de privilège (SELECT uniquement). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
role_column_grants
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés à toutes les colonnes pour n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les colonnes au rôle de base de données actuel et aux rôles dont le rôle de base de données actuel est membre, à l'exception de public
.
La vue inclut les droits SELECT
, INSERT
et UPDATE
que la colonne hérite de la table ou de la vue qui la contient.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table ou la vue. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
table_name |
character varying |
Nom de la table ou de la vue contenant la colonne. |
column_name |
character varying |
Nom de la colonne. |
privilege_type |
character varying |
Type de privilège (SELECT , INSERT ou UPDATE ). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
role_routine_grants
Cette vue filtrée par ligne liste les droits EXECUTE
accordés à toutes les fonctions de lecture du flux de modifications à n'importe quel rôle de base de données, y compris public
. Les principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les fonctions de lecture du flux de modifications au rôle de base de données actuel et aux rôles dont le rôle de base de données actuel est membre, à l'exception de public
.
Nom de la colonne | Type | Description |
---|---|---|
grantor
|
character varying
|
Non utilisé. Toujours NULL . |
grantee
|
character varying
|
Nom du rôle auquel le privilège a été accordé. |
specific_catalog
|
character varying
|
Nom de la base de données. |
specific_schema
|
character varying
|
Nom du schéma de la routine. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
specific_name
|
character varying
|
Nom de la routine. Identifie de manière unique la routine, même si son nom est surchargé. |
routine_catalog
|
character varying
|
Nom de la base de données. |
routine_schema
|
character varying
|
Nom du schéma de la routine. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
routine_name
|
character varying
|
Nom de la routine. (Peut être dupliqué en cas de surcharge.) |
privilege_type
|
character varying
|
Type de privilège accordé. Toujours EXECUTE . |
is_grantable
|
character varying
|
Non utilisé. Toujours NO . |
role_table_grants
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés sur toutes les tables et vues à n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres comptes principaux ne peuvent voir que les autorisations accordées sur les tables et les vues au rôle de base de données actuel et aux rôles dont le rôle de base de données actuel est membre, à l'exception de public
.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table ou la vue. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
table_name |
character varying |
Nom de la table ou de la vue. |
privilege_type |
character varying |
Type de privilège (SELECT , INSERT , UPDATE ou DELETE ). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
with_hierarchy |
character varying |
Non utilisé. Toujours NULL . |
routine_options
Cette vue filtrée par ligne contient une ligne pour chaque option pour chaque fonction de lecture de flux de modifications définie.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les options pour les fonctions de lecture du flux de modifications sur lesquelles l'autorisation de contrôle des accès précis EXECUTE
est accordée au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
specific_catalog
|
character varying
|
Nom de la base de données. |
specific_schema
|
character varying
|
Nom du schéma de la routine. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
specific_name
|
character varying
|
Nom de la routine. Identifie de manière unique la routine, même si son nom est surchargé. |
option_name
|
character varying
|
Nom de l'option. |
option_type
|
character varying
|
Type de données de l'option. La valeur est l'une des suivantes:
|
option_value
|
character varying
|
Valeur de l'option. |
routine_privileges
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés à toutes les fonctions de lecture du flux de modifications pour n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les fonctions de lecture du flux de modifications au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
grantor
|
character varying
|
Non utilisé. Toujours NULL . |
grantee
|
character varying
|
Nom du rôle auquel le privilège a été accordé. |
specific_catalog
|
character varying
|
Nom de la base de données. |
specific_schema
|
character varying
|
Nom du schéma de la routine. Pour les bases de données en dialecte PostgreSQL, la valeur par défaut est public . |
specific_name
|
character varying
|
Nom de la routine. Identifie de manière unique la routine, même si son nom est surchargé. |
routine_catalog
|
character varying
|
Nom de la base de données. |
routine_schema
|
character varying
|
Nom du schéma de la routine. La valeur par défaut est public . |
routine_name
|
character varying
|
Nom de la routine. (Peut être dupliqué en cas de surcharge.) |
privilege_type
|
character varying
|
Type de privilège accordé. |
is_grantable
|
character varying
|
Non utilisé. Toujours NO . |
routines
Cette vue filtrée par ligne liste toutes les fonctions de lecture du flux de modifications d'une base de données.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les fonctions de lecture du flux de modifications pour lesquelles le droit de contrôle des accès précis EXECUTE
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
specific_catalog |
character varying |
Nom de la base de données. |
specific_schema |
character varying |
Nom du schéma de la routine. La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
specific_name |
character varying |
Nom de la routine. Identifie de manière unique la routine, même si son nom est surchargé. |
routine_catalog |
character varying |
Nom de la base de données. |
routine_schema |
character varying |
Nom du schéma de la routine. |
routine_name |
character varying |
Nom de la routine. (Peut être dupliqué en cas de surcharge.) |
routine_type |
character varying |
Type de la routine (FUNCTION ou PROCEDURE ). Toujours FUNCTION |
module_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
module_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
module_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
udt_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
data_type |
character varying |
Type de retour de la routine. La valeur est l'une des suivantes:
|
character_maximum_length |
bigint |
Non utilisé. La valeur est toujours NULL . |
character_octet_length |
bigint |
Non utilisé. La valeur est toujours NULL . |
character_set_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
character_set_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
collation_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
numeric_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
numeric_precision_radix |
bigint |
Non utilisé. La valeur est toujours NULL . |
numeric_scale |
bigint |
Non utilisé. La valeur est toujours NULL . |
datetime_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
interval_type |
character varying |
Non utilisé. La valeur est toujours NULL . |
interval_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
type_udt_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
type_udt_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
type_udt_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
scope_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
maximum_cardinality |
bigint |
Non utilisé. La valeur est toujours NULL . |
dtd_identifier |
character varying |
Non utilisé. La valeur est toujours NULL . |
routine_body |
character varying |
Type du corps de la routine (SQL ou EXTERNAL ). |
routine_definition |
character varying |
Définition du code SQL routine_body , vide dans le cas contraire. |
external_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
external_language |
character varying |
Non utilisé. La valeur est toujours NULL . |
parameter_style |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_deterministic |
character varying |
Non utilisé. La valeur est toujours NULL . |
sql_data_access |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_null_call |
character varying |
Non utilisé. La valeur est toujours NULL . |
sql_path |
character varying |
Non utilisé. La valeur est toujours NULL . |
schema_level_routine |
character varying |
Non utilisé. La valeur est toujours NULL . |
max_dynamic_result_sets |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_user_defined_cast |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_implicitly_invocable |
character varying |
Non utilisé. La valeur est toujours NULL . |
security_type |
character varying |
Type de sécurité de la routine. Seule la fonctionnalité INVOKER est prise en charge. |
to_sql_specific_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
to_sql_specific_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
to_sql_specific_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
as_locator |
character varying |
Non utilisé. La valeur est toujours NULL . |
created |
timestamp with time zone |
Non utilisé. La valeur est toujours NULL . |
last_altered |
timestamp with time zone |
Non utilisé. La valeur est toujours NULL . |
new_savepoint_level |
character varying |
Non utilisé. La valeur est toujours NULL . |
is_udt_dependent |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_from_data_type |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_as_locator |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_char_max_length |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_char_octet_length |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_char_set_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_char_set_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_char_set_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_collation_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_collation_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_collation_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_numeric_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_numeric_precision_radix |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_numeric_scale |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_datetime_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_interval_type |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_interval_precision |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_type_udt_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_type_udt_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_type_udt_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_scope_catalog |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_scope_schema |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_scope_name |
character varying |
Non utilisé. La valeur est toujours NULL . |
result_cast_maximum_cardinality |
bigint |
Non utilisé. La valeur est toujours NULL . |
result_cast_dtd_identifier |
character varying |
Non utilisé. La valeur est toujours NULL . |
schemata
La vue information_schema.schemata
contient une ligne pour chaque schéma de la base de données actuelle. Les schémas incluent le schéma d'informations et un schéma par défaut nommé public
.
Nom de la colonne | Type | Description |
---|---|---|
catalog_name |
character varying |
Nom de la base de données. |
schema_name |
character varying |
Nom du schéma. Cette valeur est définie sur public pour le schéma par défaut et non vide pour les schémas nommés. |
schema_owner |
character varying |
Nom du propriétaire du schéma. |
default_character_set_catalog |
character varying |
Non utilisé. |
default_character_set_schema |
character varying |
Non utilisé. |
default_character_set_name |
character varying |
Non utilisé. |
sql_path |
character varying |
Non utilisé. |
effective_timestamp |
timestamp with timezone |
Code temporel à partir duquel toutes les données de ce schéma sont devenues effectives. Cette valeur n'est utilisée que pour le schéma par défaut. |
sequences
La vue information_schema.sequences
contient les métadonnées sequences
.
Nom de la colonne | Type | Description |
---|---|---|
sequence_catalog |
character varying |
Nom de la base de données. |
sequence_schema |
character varying |
Nom du schéma de la séquence. La valeur par défaut est public pour une base de données en dialecte PostgreSQL. |
sequence_name |
character varying |
Nom de la séquence. |
data_type |
character varying |
Sequence n'est compatible qu'avec int8 . |
numeric_precision |
bigint |
Non utilisé. La valeur est toujours "NULL". |
numeric_precision_radix |
bigint |
Non utilisé. La valeur est toujours "NULL". |
numeric_scale |
bigint |
Non utilisé. La valeur est toujours "NULL". |
start_value |
bigint |
Non utilisé. La valeur est toujours "NULL". |
minimum_value |
bigint |
Non utilisé. La valeur est toujours "NULL". |
maximum_value |
bigint |
Non utilisé. La valeur est toujours "NULL". |
increment |
bigint |
Non utilisé. La valeur est toujours "NULL". |
cycle_option |
character varying |
La seule option acceptée par sequence est no . |
sequence_kind |
character varying |
Type de séquence. bit_reversed_positive est la seule valeur acceptable. |
counter_start_value |
bigint |
Valeur de départ du compteur de séquence. |
skip_range_min |
bigint |
Valeur minimale de la plage ignorée. Si ce nombre n'est pas défini, la valeur est NULL . |
skip_range_max |
bigint |
Valeur maximale de la plage ignorée. Si ce nombre n'est pas défini, la valeur est NULL . |
spanner_statistics
Ce tableau répertorie les packages de statistiques disponibles pour l'optimiseur de requêtes.
Nom de la colonne | Type | Description |
---|---|---|
catalog_name |
character varying |
Nom de la base de données. |
schema_name |
character varying |
Nom du schéma. La valeur de schéma par défaut est public . |
package_name |
character varying |
Nom du package de statistiques. |
allow_gc |
character varying |
Indique si le package de statistiques est exempté de la récupération de mémoire. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. Cet attribut doit être défini sur NO avant de pouvoir faire référence au package de statistiques dans une optimisation ou via l'API cliente.
|
table_constraints
Cette vue contient toutes les contraintes appartenant aux tables auxquelles l'utilisateur actuel a accès (à l'exception de SELECT
).
Nom de la colonne | Type | Description |
---|---|---|
constraint_catalog |
character varying |
Nom de la base de données. |
constraint_schema |
character varying |
Nom du schéma contenant la contrainte. |
constraint_name |
character varying |
Nom de la contrainte. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table associée à la contrainte. |
table_name |
character varying |
Nom de la table. |
constraint_type |
character varying |
Type de la contrainte. Les valeurs possibles du champ sont les suivantes :
|
is_deferrable |
character varying |
La valeur est toujours NO . |
initially_deferred |
character varying |
La valeur est toujours NO . |
enforced |
character varying |
Indique si la contrainte est appliquée. Si une contrainte est appliquée (après avoir atteint un certain état), elle est validée à la fois au moment de l'écriture et par un vérificateur d'intégrité en arrière-plan. Conformément à la norme SQL, la chaîne comprend une valeur YES ou NO à la place d'une valeur booléenne. |
table_privileges
Cette vue filtrée par ligne liste tous les droits de contrôle des accès ultraprécis accordés sur toutes les tables et vues à n'importe quel rôle de base de données, y compris public
. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les lignes de cette vue. Tous les autres principaux ne peuvent voir que les droits accordés sur les tables et les vues au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de colonne | Type | Description |
---|---|---|
grantor |
character varying |
Non utilisé. Toujours NULL . |
grantee |
character varying |
Nom du rôle de base de données auquel ce privilège est accordé. |
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table ou la vue.
La valeur par défaut est public pour les bases de données en dialecte PostgreSQL. |
table_name |
character varying |
Nom de la table ou de la vue. |
privilege_type |
character varying |
Type de privilège (SELECT , INSERT , UPDATE ou DELETE ). |
is_grantable |
character varying |
Non utilisé. Toujours NO . |
that have_hierarchy |
character varying |
Non utilisé. Toujours NULL . |
tables
Cette vue filtrée par ligne liste toutes les tables et vues de la base de données actuelle.
Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les tables et vues. Tous les autres principaux ne peuvent voir que les tables qui répondent à l'une des exigences suivantes:
-
Les droits de contrôle des accès ultraprécis
SELECT
,INSERT
,UPDATE
ouDELETE
sont accordés sur la table au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou àpublic
. - Les autorisations
SELECT
,INSERT
ouUPDATE
sont accordées sur n'importe quelle colonne de table au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou àpublic
.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma contenant la table ou la vue. |
table_name |
character varying |
Nom de la table, de la vue ou du synonyme. |
table_type |
character varying |
Type de table. Les valeurs possibles sont "BASE TABLE", "VIEW" ou "SYNONYM". |
self_referencing_column_name |
character varying |
Non utilisé. |
reference_generation |
character varying |
Non utilisé. |
user_defined_type_catalog |
character varying |
Non utilisé. |
user_defined_type_schema |
character varying |
Non utilisé. |
user_defined_type_name |
character varying |
Non utilisé. |
is_insertable_into |
character varying |
Non utilisé. |
is_typed |
character varying |
Non utilisé. |
commit_action |
character varying |
Non utilisé. |
parent_table_name |
character varying |
Nom de la table parente si cette table est entrelacée ou NULL . |
on_delete_action |
character varying |
Ce paramètre est défini sur CASCADE ou NO ACTION pour les tables entrelacées, et sur NULL dans les autres cas. Pour en savoir plus, consultez les instructions TABLE. |
spanner_state |
character varying |
État actuel de la création de la table. Une table peut passer par plusieurs états lors de la création, si des opérations groupées sont impliquées, par exemple, lorsque la table est créée avec une clé étrangère qui nécessite un remplissage de son index référencé. Les états possibles sont les suivants :
|
interleave_type |
character varying |
Indique si une relation parent-enfant existe entre cette table et la table dans laquelle elle est entrelacée. Les valeurs possibles du champ sont les suivantes :
|
row_deletion_policy_expression |
character varying |
Chaîne contenant le texte de l'expression qui définit ROW
DELETION POLICY . |
table_synonyms
Ce tableau répertorie les informations sur les synonymes de la table.
Nom de la colonne | Type | Description |
---|---|---|
CATALOG |
STRING |
Nom du catalogue contenant la table. |
SCHEMA |
STRING |
Nom du schéma contenant la table. |
TABLE_NAME |
STRING |
Nom de la table. |
SYNONYM_CATALOG |
STRING |
Nom du catalogue du synonyme. |
SYNONYM_SCHEMA |
STRING |
Nom du schéma du synonyme. |
SYNONYM_TABLE_NAME |
STRING |
Nom de la table du synonyme. |
views
Cette vue filtrée par ligne liste toutes les vues de la base de données actuelle. Les comptes principaux disposant d'autorisations IAM au niveau de la base de données et ceux auxquels l'accès au rôle système spanner_info_reader
ou aux membres de ce rôle a été accordé peuvent voir toutes les vues. Tous les autres principaux ne peuvent voir que les vues auxquelles le droit de contrôle des accès ultraprécis SELECT
est accordé au rôle de base de données actuel, aux rôles dont le rôle de base de données actuel est membre ou à public
.
Nom de la colonne | Type | Description |
---|---|---|
table_catalog |
character varying |
Nom de la base de données. |
table_schema |
character varying |
Nom du schéma. La valeur par défaut est public . |
table_name |
character varying |
Nom de la vue. |
view_definition |
character varying |
Texte SQL de la requête qui définit la vue. |
check_option |
character varying |
Non utilisé. |
is_updatable |
character varying |
Non utilisé. |
is_insertable_into |
character varying |
Non utilisé. |
is_trigger_updatable |
character varying |
Non utilisé. |
is_trigger_deletable |
character varying |
Non utilisé. |
is_trigger_insertable_into |
character varying |
Non utilisé. |
security_type |
character varying |
Type de sécurité de la vue. INVOKER ou DEFINER .
Pour en savoir plus, consultez la page À propos des vues. |
Examples
Renvoie des informations sur chaque table du schéma par défaut:
SELECT
t.table_catalog,
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = 'public'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
Renvoie le nom de toutes les tables et vues dans information_schema
pour les bases de données en dialecte PostgreSQL:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = "information_schema"
Renvoie des informations sur les colonnes de la table utilisateur my_table
:
SELECT
t.ordinal_position,
t.column_name,
t.data_type,
t.spanner_type,
t.is_nullable
FROM
information_schema.columns AS t
WHERE
t.table_schema = 'public'
AND
t.table_name = 'my_table'
ORDER BY
t.ordinal_position
Renvoie des informations sur chaque indice du schéma par défaut de la base de données actuelle : ```sql SELECT t.table_name, t.index_name, t.parent_table_name FROM information_schema.indexes AS t WHERE t.table_schema = 'public' AND t.index_type != 'PRIMARY_KEY' ORDER BY t.table_schema, t.table_name, t.index_name
Renvoie toutes les colonnes qui utilisent des options autres que celles par défaut:
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_schema = 'public'
ORDER BY
t.table_schema,
t.table_name,
t.column_name,
t.option_name
Renvoie les options de base de données actuelles associées à l'optimiseur:
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.schema_name='public'
AND s.option_name IN ('optimizer_version',
'optimizer_statistics_package')
Renvoyez tous les packages de statistiques disponibles:
SELECT *
FROM information_schema.spanner_statistics;
Étape suivante
- Découvrez les outils d'introspection disponibles pour vous aider à examiner les problèmes liés à la base de données.