DROP TASK¶
Supprime une tâche du schéma actuel/spécifié.
- Voir aussi :
Syntaxe¶
DROP TASK [ IF EXISTS ] <name>
Paramètres¶
name
Indique l’identificateur de la tâche à détruire. Si l’identificateur contient des espaces, des caractères spéciaux ou des caractères majuscules et minuscules, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse (p. ex.
"My Object"
).Si l’identificateur de la tâche n’est pas complet (sous la forme
db_name.schema_name.task_name
ouschema_name.task_name
), la commande recherche la tâche dans le schéma actuel de la session.
Notes sur l’utilisation¶
Lorsqu’une tâche est détruite, son exécution actuelle (c’est-à-dire une exécution avec un état EXECUTING dans la sortie TASK_HISTORY) est terminée. Pour interrompre l’exécution de la tâche spécifiée, exécutez la fonction SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS.
La tâche racine dans un graphique de tâches doit être suspendue avant que toute tâche dans le graphique de tâches soit détruite.
Une tâche autonome peut être détruite par le propriétaire de la tâche (c’est-à-dire le rôle qui a le privilège OWNERSHIP sur la tâche) ou un rôle supérieur sans suspendre la tâche au préalable.
Si une tâche prédécesseur dans un graphique de tâches est détruite, toutes les anciennes tâches enfants qui ont identifié cette tâche comme prédécesseur deviennent des tâches autonomes ou des tâches racine, selon que d’autres tâches identifient ces anciennes tâches enfants comme leur prédécesseur. Ces anciennes tâches enfants sont suspendues par défaut et doivent être reprises manuellement.
Exemples¶
Détruire une tâche :
SHOW TASKS LIKE 't2%'; DROP TASK t2; SHOW TASKS LIKE 't2%';
Détruire à nouveau la tâche, mais ne pas engendrer d’erreur si la tâche n’existe pas :
DROP TASK IF EXISTS t2;