table

dropTable

##set_table ##data_management

Description

L'action dropTable permet de supprimer (ou décharger) une table en mémoireGemini said

Espace de stockage temporaire (RAM) utilisé par le moteur CAS pour charger et traiter les données à haute vitesse, minimisant les accès disque pour optimiser les performances de SAS Viya.
dans l'environnement CAS . Attention, si la table possède une existence physique sur disque, seule la version en RAM est évaporée. C'est l'outil parfait pour libérer de l'espace, avec un petit côté magique (pouf, disparue !). À noter que certains produits SAS utilisent parfois le terme 'unload' pour désigner cette même action.

Syntaxe Officielle
proc cas;
table.dropTable /
caslib="string"
name="table-name"
quiet=TRUE | FALSE
remACs=TRUE | FALSE;
quit;

Paramètres Clés

Nom du paramètre Description
name Le nom exact de la table à supprimer. Ce paramètre est obligatoire, car CAS refuse logiquement de supprimer des choses au hasard !
caslib Le nom de la caslib (bibliothèque CAS) contenant la table. Si elle n'est pas spécifiée, la caslib active de la session sera utilisée par défaut.
quiet Si défini sur TRUE, le système ne renvoie pas d'erreur si vous tentez de supprimer une table qui n'existe pas. Très pratique pour les scripts de nettoyage au démarrage d'un processus.
remACs Si défini sur TRUE, supprime également tous les contrôles d'accès (Access Controls) posés sur cette table. On fait littéralement table rase des paramètres de sécurité associés.

Préparation des données

Préparation d'une table cobaye

Chargeons une petite table en mémoire dans notre caslib personnelle pour avoir quelque chose à supprimer sans faire de dégâts.

1PROC CAS;
2 TABLE.loadTable / path="cars.sashdat", caslib="SystemData", casOut={name="cars_test", caslib="casuser"};
3QUIT;

Exemples d'utilisation

Suppression classique d'une table

Supprime simplement la table 'cars_test' de notre espace de travail.

1PROC CAS;
2 TABLE.dropTable / name="cars_test", caslib="casuser";
3QUIT;
Résultat Attendu :
La table est libérée de la mémoire CAS. Un message de succès confirmant l'action est affiché dans le journal SAS.
Suppression en mode ninja (silencieux et nettoyage des droits)

On tente de supprimer une table qui a peut-être déjà été supprimée, sans polluer les logs avec des erreurs grâce au paramètre quiet, et on s'assure d'effacer les éventuelles traces de droits d'accès avec remACs.

1PROC CAS;
2 TABLE.dropTable / name="vieille_table_secrete", caslib="casuser", quiet=TRUE, remACs=TRUE;
3QUIT;
Résultat Attendu :
Le code s'exécute avec le statut 'OK' (severity 0) même si la table 'vieille_table_secrete' n'existe pas. S'il y avait des règles de sécurité personnalisées sur ce nom de table, elles sont définitivement révoquées.