Type : CREATION_INTERNE
Examples use generated data (datalines) or SASHELP.
| 1 | cas; |
| 2 | /* Créer une table temporaire en mémoire CAS */ |
| 3 | DATA casuser.ma_table_basique; |
| 4 | INPUT ID Name $ Value; |
| 5 | DATALINES; |
| 6 | 1 Alice 100 |
| 7 | 2 Bob 150 |
| 8 | 3 Charlie 120 |
| 9 | ; |
| 10 | RUN; |
| 11 | |
| 12 | /* Afficher les informations de la table */ |
| 13 | PROC CAS; |
| 14 | TABLE.tableInfo RESULT=r / name="ma_table_basique" caslib="casuser"; |
| 15 | PRINT r; |
| 16 | RUN; |
| 1 | cas; |
| 2 | /* Créer une table dans le caslib "Samples" */ |
| 3 | DATA samples.produits_ventes; |
| 4 | INPUT Annee Produit $ Quantite Prix; |
| 5 | DATALINES; |
| 6 | 2023 A 10 100 |
| 7 | 2023 B 20 50 |
| 8 | 2024 A 15 110 |
| 9 | 2024 C 5 200 |
| 10 | ; |
| 11 | RUN; |
| 12 | |
| 13 | /* Tenter d'obtenir des informations sur une table inexistante, en mode silencieux */ |
| 14 | PROC CAS; |
| 15 | TABLE.tableInfo RESULT=r_non_existent / name="table_introuvable" quiet=TRUE; |
| 16 | PRINT r_non_existent; |
| 17 | RUN; |
| 18 | |
| 19 | /* Obtenir des informations sur une table existante dans un caslib spécifique */ |
| 20 | PROC CAS; |
| 21 | TABLE.tableInfo RESULT=r_existent / name="produits_ventes" caslib="Samples"; |
| 22 | PRINT r_existent; |
| 23 | RUN; |
| 1 | cas; |
| 2 | /* Créer quelques tables avec des noms contenant des caractères spéciaux */ |
| 3 | DATA casuser.donnees_2023_Q1; ID=1; Val=10; RUN; |
| 4 | DATA casuser.donnees_2023_Q2; ID=2; Val=20; RUN; |
| 5 | DATA casuser.donnees_2024_Q1; ID=3; Val=30; RUN; |
| 6 | DATA casuser.rapport_final; ID=4; Val=40; RUN; |
| 7 | |
| 8 | /* Rechercher toutes les tables dont le nom commence par "donnees_" et contient "2023", |
| 9 | en utilisant le caractère joker '%' et en désactivant wildIgnore pour qu'il soit interprété */ |
| 10 | PROC CAS; |
| 11 | TABLE.tableInfo RESULT=r_wildcard / |
| 12 | name="donnees_2023_%" |
| 13 | caslib="casuser" |
| 14 | wildIgnore=FALSE; |
| 15 | PRINT r_wildcard; |
| 16 | RUN; |
| 1 | cas; |
| 2 | /* Créer une table dont le nom contient un caractère spécial à échapper */ |
| 3 | DATA casuser."resultat_final_%_test"; |
| 4 | ID=10; |
| 5 | Score=95.5; |
| 6 | RUN; |
| 7 | |
| 8 | /* Tenter de trouver la table en utilisant un joker pour le nom et un caractère d'échappement */ |
| 9 | PROC CAS; |
| 10 | TABLE.tableInfo RESULT=r_escape / |
| 11 | name="resultat_final_\%_test" /* Cherche le '%' littéral */ |
| 12 | caslib="casuser" |
| 13 | wildIgnore=FALSE /* Active l'interprétation des jokers */ |
| 14 | wildEscape="\\"; /* Indique que '\' est le caractère d'échappement */ |
| 15 | PRINT r_escape; |
| 16 | RUN; |
| 17 | |
| 18 | /* Autre exemple : Lister toutes les tables dans casuser */ |
| 19 | PROC CAS; |
| 20 | TABLE.tableInfo RESULT=r_all / |
| 21 | name="%" |
| 22 | caslib="casuser" |
| 23 | wildIgnore=FALSE; |
| 24 | PRINT r_all; |
| 25 | RUN; |