snow object create¶
Créez un objet d’un type donné. Consultez la documentation pour obtenir la liste des objets et paramètres pris en charge.
Syntaxe¶
snow object create
<object_type>
<object_attributes>
--json <object_json>
--if-not-exists
--replace
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--workload-identity-provider <workload_identity_provider>
--private-key-file <private_key_file>
--token <token>
--token-file-path <token_file_path>
--database <database>
--schema <schema>
--role <role>
--warehouse <warehouse>
--temporary-connection
--mfa-passcode <mfa_passcode>
--enable-diag
--diag-log-path <diag_log_path>
--diag-allowlist-path <diag_allowlist_path>
--oauth-client-id <oauth_client_id>
--oauth-client-secret <oauth_client_secret>
--oauth-authorization-url <oauth_authorization_url>
--oauth-token-request-url <oauth_token_request_url>
--oauth-redirect-uri <oauth_redirect_uri>
--oauth-scope <oauth_scope>
--oauth-disable-pkce
--oauth-enable-refresh-tokens
--oauth-enable-single-use-refresh-tokens
--client-store-temporary-credential
--format <format>
--verbose
--debug
--silent
--enhanced-exit-codes
Arguments¶
object_typeType d’objet. Par exemple, table, base de données, pool de calcul.
object_attributes...Attributs d’objet fournis sous forme de liste de paires clé=valeur, par exemple name=my_db comment=”created with Snowflake CLI”. Consultez la documentation pour obtenir la liste complète des paramètres disponibles pour chaque objet.
Options¶
--json TEXTDéfinition d’objet au format JSON, par exemple “{« name »: « my_db », « comment »: « created with Snowflake CLI »}”. Consultez la documentation pour obtenir la liste complète des paramètres disponibles pour chaque objet.
--if-not-existsCette opération ne s’applique que si l’objet spécifié n’existe pas encore. Par défaut : false.
--replaceRemplacez cet objet s’il existe déjà. Par défaut : false.
--connection, -c, --environment TEXTNom de la connexion, tel que défini dans votre fichier
config.toml. Défaut :défaut.--host TEXTAdresse de l’hôte pour la connexion. Remplace la valeur spécifiée pour la connexion.
--port INTEGERPort pour la connexion. Remplace la valeur spécifiée pour la connexion.
--account, --accountname TEXTNom attribué à votre compte Snowflake. Remplace la valeur spécifiée pour la connexion.
--user, --username TEXTNom d’utilisateur pour se connecter à Snowflake. Remplace la valeur spécifiée pour la connexion.
--password TEXTMot de passe Snowflake. Remplace la valeur spécifiée pour la connexion.
--authenticator TEXTAuthentificateur Snowflake. Remplace la valeur spécifiée pour la connexion.
--workload-identity-provider TEXTFournisseur d’identité de charge de travail (AWS, AZURE, GCP, OIDC). Remplace la valeur spécifiée pour la connexion.
--private-key-file, --private-key-path TEXTChemin du fichier de clé privée Snowflake. Remplace la valeur spécifiée pour la connexion.
--token TEXTJeton OAuth à utiliser lors de la connexion à Snowflake.
--token-file-path TEXTChemin d’accès au fichier contenant un jeton OAuth à utiliser lors de la connexion à Snowflake.
--database, --dbname TEXTBase de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--schema, --schemaname TEXTSchéma de la base de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--role, --rolename TEXTRôle à utiliser. Remplace la valeur spécifiée pour la connexion.
--warehouse TEXTEntrepôt à utiliser. Remplace la valeur spécifiée pour la connexion.
--temporary-connection, -xUtilise une connexion définie avec les paramètres de la ligne de commande, au lieu d’une connexion définie dans la configuration. Par défaut : false.
--mfa-passcode TEXTJeton à utiliser pour l’authentification multifactorielle (MFA)
--enable-diagIndique s’il faut générer un rapport de diagnostic de la connexion. Par défaut : false.
--diag-log-path TEXTChemin d’accès au rapport généré. Il s’agit du répertoire temporaire du système par défaut. Par défaut : <system_temporary_directory>.
--diag-allowlist-path TEXTChemin d’accès à un fichier JSON contenant les paramètres de la liste d’autorisations.
--oauth-client-id TEXTValeur de l’identifiant du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.
--oauth-client-secret TEXTValeur du secret du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.
--oauth-authorization-url TEXTPoint de terminaison du fournisseur d’identité fournissant le code d’autorisation au pilote.
--oauth-token-request-url TEXTPoint de terminaison du fournisseur d’identité fournissant les jetons d’accès au pilote.
--oauth-redirect-uri TEXTURI à utiliser pour la redirection du code d’autorisation.
--oauth-scope TEXTChamp d’application demandé dans la requête d’autorisation du fournisseur d’identité.
--oauth-disable-pkceDésactive la clé de preuve pour l’échange de code (PKCE). Par défaut :
False.--oauth-enable-refresh-tokensPermet une réauthentification silencieuse lorsque le jeton d’accès actuel n’est plus valable. Par défaut :
False.--oauth-enable-single-use-refresh-tokensIndique s’il faut choisir une sémantique de jeton d’actualisation à usage unique. Par défaut :
False.--client-store-temporary-credentialEnregistrez les identifiants de connexion temporaires.
--format [TABLE|JSON|JSON_EXT|CSV]Spécifie le format de sortie. Par défaut : TABLE.
--verbose, -vAffiche les entrées de journal pour les niveaux de journalisation
infoet supérieurs. Par défaut : false.--debugAffiche les entrées de journal pour les niveaux de journalisation
debuget supérieurs ; les journaux de débogage contiennent des informations supplémentaires. Par défaut : false.--silentDésactive la sortie intermédiaire vers la console. Par défaut : false.
--enhanced-exit-codesDifférenciez les codes d’erreur de sortie en fonction du type d’erreur. Par défaut : false.
--helpAffiche le texte d’aide de cette commande.
Notes sur l’utilisation¶
La commande snow object create crée l’un des types d’objets Snowflake suivants, en fonction des attributs ou des définitions d’objet fournis :
accountcatalog-integrationcompute-pooldatabasedatabase-roledynamic-tableevent-tableexternal-volumefunctionimage-repositorymanaged-accountnetwork-policynotebooknotification-integrationpipeprocedureroleschemaservicestagestreamtabletaskuser-defined-functionviewwarehouse
Pour chaque objet, vous devez spécifier les détails d’objet appropriés à l’aide des attributs d’objet ou des définitions d’objet.
Utilisez le paramètre
object_attributesqui spécifie les détails de l’objet sous la forme d’une série de paires<key>=<value>, telles que :snow object create database name=my_db comment="Created with Snowflake CLI"
Utilisez l’option
--json object_definitionpour spécifier les détails de l’objet comme JSON, tel que :snow object create table name=my_table columns='[{"name":"col1","datatype":"number", "nullable":false}]' constraints='[{"name":"prim_key", "column_names":["col1"], "constraint_type":"PRIMARY KEY"}]' --database my_db --schema public
Voir Exemples pour plus d’exemples.
Note
Les types d’objets suivants nécessitent qu’une base de données soit identifiée dans la configuration de connexion, par exemple config.toml, ou transmis à la commande à l’aide de l’option --database.
image-repository
schema
service
table
task
Les sections suivantes décrivent les attributs que Snowflake CLI prend en charge pour les types d’objets sélectionnés.
Vous pouvez trouver des attributs pour d’autres types d’objets en vérifiant leurs références de commandes SQL CREATE correspondantes, telles que CREATE ACCOUNT.
Attributs de l’objet de pool de calcul¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
min_nodes required, integer |
Nombre minimum de nœuds pour le pool de calcul. |
max_nodes required, integer |
Nombre maximum de nœuds pour le pool de calcul. |
instance_family required, string |
Nom de la famille d’instances. Pour plus d’informations sur les familles d’instances, reportez-vous à la commande SQL CREATE COMPUTE POOL. |
auto_resume optional, string |
S’il faut reprendre automatiquement le pool de calcul lorsqu’une instruction nécessitant le pool de calcul est soumise. |
commentaire optional, string |
Commentaire décrivant le pool de calcul. |
auto_suspend_secs optional, string |
Nombre de secondes d’inactivité après lesquelles vous souhaitez que Snowflake suspende automatiquement le pool de calcul. |
Attributs des objets de base de données.¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
commentaire optional, string |
Commentaire décrivant la base de données. |
data_retention_time_in_days optional, integer |
Nombre de jours pendant lesquels des actions Time Travel (CLONE et UNDROP) peuvent être effectuées sur le schéma, ainsi que la durée de conservation Time Travel par défaut de toutes les tables créées dans le schéma. |
default_ddl_collation optional, string |
Spécification de classement par défaut pour toutes les tables et tous les schémas ajoutés à la base de données. Vous pouvez remplacer cette valeur par défaut au niveau du schéma et de la table individuelle. |
max_data_extension_time_in_days optional, integer |
Nombre maximum de jours pendant lesquels Snowflake peut prolonger la période de conservation des données pour les tables de la base de données, afin d’éviter que les flux sur les tables ne deviennent obsolètes. |
suspend_task_after_num_failures optional, integer |
Nombre d’exécutions consécutives de tâches qui ont échoué après lequel la tâche en cours est suspendue automatiquement. |
user_task_managed_initial_warehouse_size optional, integer |
Taille des ressources de calcul à provisionner pour la première exécution de la tâche, avant qu’un historique de la tâche ne soit disponible pour que Snowflake puisse déterminer une taille idéale. Les valeurs possibles incluent XSMALL, SMALL, MEDIUM, LARGE et XLARGE. |
user_task_timeout_ms optional, integer |
Limite de temps, en millisecondes, sur une seule exécution de la tâche avant son expiration. Pour plus d’informations, voir USER_TASK_TIMEOUT_MS. |
Attributs de l’objet du référentiel d’images¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
Attributs de l’objet de schéma¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
commentaire optional, string |
Commentaire décrivant le schéma. |
data_retention_time_in_days optional, integer |
Nombre de jours pendant lesquels des actions Time Travel (CLONE et UNDROP) peuvent être effectuées sur le schéma, ainsi que la durée de conservation Time Travel par défaut de toutes les tables créées dans le schéma. |
default_ddl_collation optional, string |
Spécification de classement par défaut pour toutes les tables et tous les schémas ajoutés à la base de données. Vous pouvez remplacer cette valeur par défaut au niveau du schéma et de la table individuelle. |
max_data_extension_time_in_days optional, integer |
Nombre maximum de jours pendant lesquels Snowflake peut prolonger la période de conservation des données pour les tables de la base de données, afin d’éviter que les flux sur les tables ne deviennent obsolètes. |
suspend_task_after_num_failures optional, integer |
Nombre d’exécutions consécutives de tâches qui ont échoué après lequel la tâche en cours est suspendue automatiquement. |
user_task_managed_initial_warehouse_size optional, integer |
Taille des ressources de calcul à provisionner pour la première exécution de la tâche, avant qu’un historique de la tâche ne soit disponible pour que Snowflake puisse déterminer une taille idéale. |
user_task_timeout_ms optional, integer |
Limite de temps, en millisecondes, sur une seule exécution de la tâche avant son expiration. Pour plus d’informations, voir USER_TASK_TIMEOUT_MS. |
Attributs de l’objet de service¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
compute_pool required, string |
Nom du pool de calcul de votre compte sur lequel le service doit être exécuté. |
spec required, object |
Spécification du service. Voir le tableau des spécifications de service pour plus de détails. |
external_access_integrations optional, string list |
Noms des intégrations d’accès externes qui permettent à votre service d’accéder à des sites externes. |
auto_resume optionnel, booléen |
S’il faut reprendre automatiquement un service lorsqu’une fonction de service ou une entrée est appelée. |
min_instances optional, integer |
Nombre minimum d’instances de service à exécuter. |
max_instances optional, integer |
Nombre maximum d’instances de service à exécuter. |
query_warehouse optional, string |
Entrepôt à utiliser si un conteneur de service se connecte à Snowflake pour exécuter une requête, mais ne spécifie pas explicitement un entrepôt à utiliser. |
commentaire optional, string |
Commentaire pour le service. |
Attributs de spécification de service
Attribut |
Description |
|---|---|
spec_type required, string |
Type de spécification de service. Les valeurs possibles incluent |
spec_text required, string |
(Valable uniquement pour Spécification du service. Vous pouvez utiliser une paire de signes du dollar ($$) pour délimiter le début et la fin de la chaîne de spécification. |
stage required, string |
(Valable uniquement pour Zone de préparation interne de Snowflake où le fichier de spécification est stocké comme |
name required, string |
(Valable uniquement pour Chemin d’accès au fichier de spécification du service sur la zone de préparation, comme |
Attributs de l’objet de table¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. Ce nom doit être unique pour le schéma dans lequel la table est créée. |
kind optional, string |
Type de table. Les valeurs possibles incluent : TABLE pour les tables permanentes, TEMPORARY, et TRANSIENT. |
commentaire optional, string |
Description de la table. |
cluster_by[] optional, string list |
Liste d’une ou de plusieurs colonnes ou expressions de colonne dans la table comme clés de clustering. |
enable_schema_evolution optionnel, booléen |
S’il faut activer ou désactiver l’évolution du schéma pour la table. |
change_tracking optionnel, booléen |
S’il faut activer ou désactiver le suivi des modifications pour la table. |
data_retention_time_in_days optional, integer |
Période de conservation, en jours, de la table pour que les actions Time Travel SELECT, CLONE, UNDROP puissent être effectuées sur les données historiques de la table. |
max_data_extension_time_in_days optional, integer |
Nombre maximal de jours pendant lesquels Snowflake peut prolonger la période de conservation des données pour éviter que les flux sur la table ne deviennent périmés. |
default_ddl_collation optional, string |
Spécification de classement par défaut pour les colonnes de la table, y compris les colonnes ajoutées à la table à l’avenir. |
columns required, column list |
Liste des définitions de colonnes. Voir Attributs de définition de colonne. |
constraints optional, constraint list |
Liste des définitions de contraintes. Voir Attributs de définition de contrainte. |
Attributs de définition de colonne
Attribut |
Description |
|---|---|
name required, string |
Nom de colonne. |
datatype required, string |
Type de données contenues dans la colonne. |
nullable optionnel, booléen |
Indique si la colonne autorise les valeurs NULL. |
collate optional, string |
Classement à utiliser pour des opérations de colonne telles que la comparaison de chaînes. |
default optional, string |
S’il faut insérer automatiquement une valeur par défaut dans la colonne si une valeur n’est pas explicitement spécifiée avec une instruction INSERT ou CREATE TABLE AS SELECT. |
autoincrement optionnel, booléen |
S’il faut incrémenter automatiquement et inclure le nombre dans les colonnes successives. |
autoincrement_start optional, integer |
Valeur de départ de la colonne. |
autoincrement_increment optional, integer |
Incrément pour déterminer le prochain nombre auto-incrémenté. |
commentaire optional, string |
Description de la colonne. |
Attributs de définition de contrainte
Attribut |
Description |
|---|---|
name required, string |
Nom de la contrainte. |
column_names required, string list |
Noms des colonnes auxquelles appliquer la contrainte. |
constraint_type required, string |
Type de contrainte. Les valeurs possibles incluent UNIQUE, PRIMARY KEY et FOREIGN KEY. |
referenced_table_name required, string |
(Valable uniquement pour Nom de la table référencée par la clé étrangère |
referenced_column_names optional, string |
(Valable uniquement pour Noms des colonnes référencées par la clé étrangère |
Attributs de la tâche¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
definition required, string |
Définition SQL de la tâche. Cela peut être une seule instruction SQL, un appel à une procédure stockée ou une logique procédurale utilisant des scripts Snowflake. |
warehouse optional, string |
Entrepôt virtuel qui fournit les ressources de calcul pour les exécutions de tâches. |
schedule optional, string |
Planification pour l’exécution périodique de la tâche. Voir Attributs du calendrier des tâches pour plus de détails. |
commentaire optional, string |
Description du commentaire pour la tâche. |
predecessors optional, string list |
Un ou plusieurs prédécesseurs pour la tâche actuelle. |
user_task_managed_initial_warehouse_size optional, string |
Taille des ressources de calcul à provisionner pour la première exécution de la tâche. |
user_task_timeout_ms optional, string |
Limite de temps, (en millisecondes), sur une seule exécution de la tâche avant son expiration. Pour plus d’informations, voir USER_TASK_TIMEOUT_MS. |
suspend_task_after_num_failures optional, integer |
Nombre d’exécutions consécutives de tâches qui ont échoué après lequel la tâche en cours est suspendue automatiquement. |
condition optional, string |
Expression SQL booléenne ; plusieurs conditions associées à AND/OR sont prises en charge. |
allow_overlapping_execution optionnel, booléen |
S’il faut autoriser l’exécution simultanée de plusieurs instances d’un DAG. |
Attributs du calendrier des tâches
Attribut |
Description |
|---|---|
schedule_type optional, string |
Type de calendrier. Les valeurs possibles incluent |
cron_expr optional, string |
(Valable uniquement pour Une expression cron pour l’exécution de la tâche, telle que |
timezone optional, string |
(Valable uniquement pour Fuseau horaire pour le calendrier, par exemple |
minutes optional, string |
(Valable uniquement pour Nombre de minutes entre chaque exécution de tâche. |
Attributs de l’entrepôt¶
Attribut |
Description |
|---|---|
name required, string |
Identificateur de l’objet Snowflake. |
commentaire optional, string |
Description de l’entrepôt. |
warehouse_type optional, string |
Type d’entrepôt. Les valeurs possibles incluent : STANDARD et SNOWPARK-OPTIMIZED. |
warehouse_size optional, string |
Taille de l’entrepôt. Les valeurs possibles incluent : XSMALL, SMALL, MEDIUM, LARGE, XLARGE, XXLARGE, XXXLARGE, X4LARGE, X5LARGE, et X6LARGE. |
auto_suspend optional, string |
Délai, en secondes, avant que l’entrepôt ne se suspende automatiquement. |
auto_resume optional, string |
S’il faut reprendre automatiquement un entrepôt lorsqu’une instruction SQL lui est soumise. Les valeurs possibles incluent : « true » et « false ». |
max_concurrency_level optional, integer |
Niveau de simultanéité des instructions SQL exécutées par un cluster d’entrepôts. |
statement_queued_timeout_in_seconds optional, integer |
Délai, en secondes, pendant lequel une instruction SQL peut être mise en file d’attente sur un entrepôt avant qu’elle soit annulée par le système. |
statement_timeout_in_seconds optional, integer |
Délai, en secondes, après lequel une instruction SQL en cours d’exécution est annulée par le système. |
resource_monitor optional, string |
Nom d’un moniteur de ressources explicitement affecté à l’entrepôt. Lorsqu’un moniteur de ressources est explicitement affecté à un entrepôt, il contrôle les crédits mensuels utilisés par l’entrepôt. |
Exemples¶
Créez un objet de base de données à l’aide du paramètre codenowrap:
option-attributes:snow object create database name=my_db comment='Created with Snowflake CLI'
Créez un objet de table à l’aide du paramètre codenowrap:
option-attributes:snow object create table name=my_table columns='[{"name":"col1","datatype":"number", "nullable":false}]' constraints='[{"name":"prim_key", "column_names":["col1"], "constraint_type":"PRIMARY KEY"}]' --database my_db --schema public
Créez une base de données à l’aide de l’option
--json object-definition:snow object create database --json '{"name":"my_db", "comment":"Created with Snowflake CLI"}'
Créez une table à l’aide de l’option
--json object-definition:snow object create table --json "$(cat table.json)" --database my_db
où
table.jsoncontient les éléments suivants :{ "name": "my_table", "columns": [ { "name": "col1", "datatype": "number", "nullable": false } ], "constraints": [ { "name": "prim_key", "column_names": ["col1"], "constraint_type": "PRIMARY KEY" } ] }