SHOW CHANNELS

Liste des canaux Snowpipe Streaming pour lesquels vous disposez de privilèges d’accès. Cette commande peut être utilisée pour répertorier les canaux d’une table, d’une base de données ou d’un schéma spécifié (ou de la base de données/du schéma actuel de la session), ou de votre compte entier.

Voir aussi :

Syntaxe

SHOW CHANNELS [ LIKE '<pattern>' ]
           [ IN
                {
                  ACCOUNT                  |

                  DATABASE                 |
                  DATABASE <database_name> |

                  SCHEMA                   |
                  SCHEMA <schema_name>     |
                  <schema_name>            |

                  TABLE                    |
                  TABLE <table_name>       |

                  PIPE                     |
                  PIPE <pipe_name>
                }
           ]
Copy

Paramètres

LIKE 'pattern'

(Facultatif) Filtre la sortie de commande par nom d’objet. Le filtre utilise une concordance de motif insensible à la casse avec prise en charge des caractères génériques SQL (% et _).

Par exemple, les motifs suivants donnent les mêmes résultats :

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. Par défaut : aucune valeur (aucun filtrage n’est appliqué à la sortie).

[ IN ... ]

Spécifie de manière facultative la portée de la commande. Spécifie l’un des éléments suivants :

ACCOUNT

Renvoie les enregistrements pour l’ensemble du compte.

DATABASE, . DATABASE db_name

Renvoie les enregistrements pour la base de données en cours d’utilisation ou pour une base de données spécifiée (db_name).

Si vous spécifiez DATABASE sans db_name et qu’aucune base de données n’est utilisée, le mot-clé n’a aucun effet sur la sortie.

Note

L’utilisation de commandes SHOW sans clause IN dans un contexte de base de données peut donner moins de résultats que prévu.

Les objets portant le même nom ne sont affichés qu’une seule fois si aucune clause IN n’est utilisée. Par exemple, si la table t1 se trouve dans schema1 et la table t1 dans schema2 et si elles sont toutes les deux dans le champ d’application du contexte de base de données que vous avez spécifié (c’est-à-dire, si la base de données que vous avez sélectionnée est le parent de schema1 et de schema2), SHOW TABLES n’affiche qu’une seule des tables t1.

SCHEMA, . SCHEMA schema_name

Renvoie les enregistrements pour le schéma en cours d’utilisation ou un schéma spécifié (schema_name).

SCHEMA est facultatif si une base de données est utilisée ou si vous spécifiez le schema_name complet (par exemple, db.schema).

Si aucune base de données n’est utilisée, spécifier SCHEMA n’a aucun effet sur la sortie.

TABLE, . TABLE table_name

Renvoie les enregistrements de la table.

Si vous omettez IN ..., la portée de la commande dépend de l’existence ou non d’une base de données en cours d’utilisation dans la session :

  • If a database is currently in use, the command returns the objects you have privileges to view in the database. This has the same effect as specifying IN DATABASE.

  • If no database is currently in use, the command returns the objects you have privileges to view in your account. This has the same effect as specifying IN ACCOUNT.

Notes sur l’utilisation

  • La commande ne nécessite pas l’exécution d’un entrepôt en cours d’exécution.

  • La commande ne renvoie que les objets pour lesquels le rôle actuel de l’utilisateur s’est vu accorder au moins un privilège d’accès.

  • Le privilège d’accès MANAGE GRANTS permet implicitement à son titulaire de voir tous les objets du compte. Par défaut, seuls l’administrateur du compte (utilisateurs avec le rôle ACCOUNTADMIN) et l’administrateur de sécurité (utilisateurs avec le rôle SECURITYADMIN) ont le privilège MANAGE GRANTS.

  • Pour post-traiter la sortie de cette commande, vous pouvez utiliser l’opérateur de canal (->>) ou la fonction RESULT_SCAN. Les deux constructions traitent la sortie comme un jeu de résultats que vous pouvez interroger.

    Par exemple, vous pouvez utiliser l’opérateur de canal ou la fonction RESULT_SCAN pour sélectionner des colonnes spécifiques à partir de la sortie de commande SHOW ou pour filtrer les lignes.

    Lorsque vous faites référence aux colonnes de sortie, utilisez des identificateurs entre guillemets doubles pour les noms des colonnes. Par exemple, pour sélectionner la colonne de sortie type, spécifiez SELECT "type".

    Vous devez utiliser des identificateurs entre guillemets doubles, car les noms des colonnes de sortie pour les commandes SHOW sont en minuscules. Les guillemets doubles garantissent que les noms des colonnes dans la liste SELECT ou dans la clause WHERE correspondent aux noms des colonnes dans la sortie de commande SHOW qui a été analysée.

Sortie

La sortie de commande fournit les propriétés des canaux et les métadonnées dans les colonnes suivantes :

Colonne

Description

créé_le

Date et heure de création du canal.

name

Nom du canal.

database_name

Le nom de la base de données dans laquelle le canal Snowpipe Streaming est stocké logiquement.

Canal nommé : Nom de la base de données dans laquelle le canal défini par l’utilisateur est créé.

Canal par défaut (haute performance) : Le nom de la base de données de la table cible.

schema_name

Le nom du schéma dans lequel le canal Snowpipe Streaming est stocké logiquement.

Named channel: The name of the schema where the user-defined channel is created.

Canal par défaut (haute performance) : Le nom du schéma de la table cible.

table_name

Nom de la table Snowflake vers laquelle le canal est mappé pour l’ingestion de données.

Pour les canaux classiques Snowpipe Streaming : La colonne indique le nom de la table cible, qui établit le mappage du canal.

Pour les canaux par défaut (haute performance) : La colonne est renseignée par le nom de la table cible, fournissant le contexte pour la destination du canal par défaut.

client_sequencer

Pour usage interne.

row_sequencer

Pour usage interne.

offset_token

String used to track the ingestion process.

parent_name

Table or pipe where the channel is mapped to.

parent_domain

Domain (table or pipe) where the channel is mapped to.

Exemples

Afficher tous les canaux pour lesquels vous avez des privilèges de visualisation dans le schéma public de la base de données mydb :

use database mydb;

show channels;

+-------------------------------+-----------+---------------+------------------+------------------------+------------------+---------------+--------------+
| created_on                    | name      | database_name | schema_name      | table_name             | client_sequencer | row_sequencer | offset_token |
|-------------------------------+-----------+---------------+------------------+------------------------+------------------+---------------+--------------+
| 2023-05-05 17:13:17.579 -0700 | CHANNEL8  | TEST_DB1      | STREAMING_INGEST | STREAMING_INGEST_TABLE | 7                | 1             | 0            |
|                               |           |               |                  |                        |                  |               |              |
+-------------------------------+-----------+---------------+------------------+------------------------+------------------+---------------+--------------+
Copy

Afficher tous les canaux d’un pipe spécifique :

show channels in pipe MY_PIPE;
Copy