La table `saswork_table_with_char300` est créée directement dans le script via un DATA step avec des `datalines` implicites.
1 Bloc de code
CAS Session Management
Explication : Ce bloc initialise une session CAS, assigne tous les CASLIBs disponibles à la session, et définit une macro-variable `workpath` contenant le chemin d'accès au répertoire SAS WORK. Ceci est essentiel pour la gestion des données entre SAS et CAS. L'assignation de `caslib _all_` est une action d'administration.
Explication : Ce DATA step crée la table temporaire `saswork_table_with_char300` dans la bibliothèque WORK. Il définit trois variables caractère (`a`, `b`, `c`) avec des longueurs initiales de 300, 15 et 16 octets respectivement, puis y insère trois observations. Cette table sera utilisée pour démontrer la conversion VARCHAR dans CAS.
Copié !
data saswork_table_with_char300;
length a $ 300 b $ 15 c $ 16;
a='a300'; b='b15' ; c='c16' ;
output;
a='a300300'; b='b151515'; c='c161616';
output;
c='c161616161616161';
b='b15151515151515';
a="a300qzwsxedcrfvtgbyhnujmiklopqazwsxedcrfvtgbyhnujmikolp1234567890123456789012345678901234567890";
output;
run;
Explication : Cette procédure affiche les métadonnées de la table `saswork_table_with_char300`, y compris les noms de variables, les types et les longueurs. Cela permet de vérifier la structure de la table SAS avant son transfert vers CAS et de confirmer les longueurs des variables caractère.
Copié !
proc contents data=saswork_table_with_char300;
title "Contents of WORK.SASWORK_TABLE_WITH_CHAR300";
run;
1
2
PROC CONTENTS
3
DATA=saswork_table_with_char300;
4
title "Contents of WORK.SASWORK_TABLE_WITH_CHAR300";
5
RUN;
6
4 Bloc de code
PROC CAS (CASLIB Management)
Explication : Ce bloc utilise `PROC CAS` pour gérer un CASLIB nommé `sas7bdat`. Il tente d'abord de supprimer ce CASLIB s'il existe déjà (`dropCaslib`), puis le recrée (`addcaslib`) en le faisant pointer vers le chemin du répertoire SAS WORK (`&workpath`). Cette étape est nécessaire pour que CAS puisse accéder aux fichiers SAS stockés dans le répertoire WORK. La manipulation directe des CASLIBs est une action d'administration.
Explication : Cette procédure charge la table `saswork_table_with_char300` (qui est enregistrée sur disque dans le répertoire WORK en tant que `saswork_table_with_char300.sas7bdat`) dans le serveur CAS sous le nom `cas_table_with_varchar` dans le CASLIB `casuser`. L'option `varcharconversion=16` est cruciale ici : elle force les variables caractère SAS dont la longueur est supérieure à 16 octets à être converties en type VARCHAR dans CAS, ce qui permet un stockage plus efficace des chaînes de caractères de longueur variable et optimise l'utilisation de la mémoire dans CAS.
Explication : Ce dernier bloc utilise `PROC CAS` pour définir les options de session sur le CASLIB `casuser`, puis appelle l'action CAS `table.columninfo` pour afficher les métadonnées détaillées des colonnes de la table CAS `cas_table_with_varchar`. Ceci permet de vérifier comment les variables caractère ont été gérées après la conversion VARCHAR, notamment de confirmer que les variables 'a' et 'c' ont été converties en VARCHAR.
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
SAS et tous les autres noms de produits ou de services de SAS Institute Inc. sont des marques déposées ou des marques de commerce de SAS Institute Inc. aux États-Unis et dans d'autres pays. ® indique un enregistrement aux États-Unis. WeAreCAS est un site communautaire indépendant et n'est pas affilié à SAS Institute Inc.
Ce site utilise des cookies techniques et analytiques pour améliorer votre expérience.
En savoir plus.