La acción `tableInfo` del conjunto de acciones `table` permite obtener metadatos completos sobre una tabla cargada en memoria en un caslib específico. Es esencial para la exploración de datos, la verificación de la existencia de tablas y la comprensión de su estructura. Los parámetros incluyen el nombre del caslib (`caslib`), el nombre de la tabla (`name`), un indicador `quiet` para gestionar errores de tablas inexistentes, `wildEscape` para definir el carácter de escape de los comodines, y `wildIgnore` para activar o desactivar la interpretación de los caracteres comodín (% y _).
Análisis de datos
Type : CREATION_INTERNE
Los ejemplos utilizan datos generados (datalines) o SASHELP.
1 Bloque de código
DATA STEP / PROC CAS Data
Explicación : Este ejemplo ilustra el uso más simple de `table.tableInfo`. Se crea una pequeña tabla en la memoria CAS ('casuser.ma_table_basique') usando un paso DATA, luego se llama a la acción `table.tableInfo` para mostrar sus metadatos. El parámetro `name` especifica la tabla de la que se solicitan las informaciones, y `caslib` indica el caslib donde reside la tabla.
¡Copiado!
cas;
/* Créer une table temporaire en mémoire CAS */
data casuser.ma_table_basique;
input ID Name $ Value;
datalines;
1 Alice 100
2 Bob 150
3 Charlie 120
;
run;
/* Afficher les informations de la table */
proc cas;
table.tableInfo result=r / name="ma_table_basique" caslib="casuser";
print r;
run;
Explicación : Este ejemplo muestra cómo usar las opciones comunes `caslib` y `quiet`. Se crea una tabla `produits_ventes` en el caslib 'Samples'. La primera llamada a `table.tableInfo` intenta recuperar información sobre una tabla 'table_introuvable' con `quiet=TRUE`. Esto permite evitar un error si la tabla no existe, y el estado de la solicitud será 'OK' con una severidad que indica que la tabla no fue encontrada. La segunda llamada usa `caslib="Samples"` para especificar el caslib de la tabla `produits_ventes`.
¡Copiado!
cas;
/* Créer une table dans le caslib "Samples" */
data samples.produits_ventes;
input Annee Produit $ Quantite Prix;
datalines;
2023 A 10 100
2023 B 20 50
2024 A 15 110
2024 C 5 200
;
run;
/* Tenter d'obtenir des informations sur une table inexistante, en mode silencieux */
proc cas;
table.tableInfo result=r_non_existent / name="table_introuvable" quiet=TRUE;
print r_non_existent;
run;
/* Obtenir des informations sur une table existante dans un caslib spécifique */
proc cas;
table.tableInfo result=r_existent / name="produits_ventes" caslib="Samples";
print r_existent;
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 10100
7
2023 B 2050
8
2024 A 15110
9
2024 C 5200
10
;
11
RUN;
12
13
/* Tenter d'obtenir des informations sur une table inexistante, en mode silencieux */
Explicación : Este ejemplo ilustra un uso avanzado con los parámetros `wildIgnore` y `wildEscape`. Se crean varias tablas en 'casuser' para demostrar la búsqueda por patrón. Al definir `wildIgnore=FALSE`, los caracteres '%' y '_' en el parámetro `name` se interpretan como caracteres comodín. El ejemplo busca todas las tablas cuyo nombre coincide con el patrón 'donnees_2023_%', mostrando la información para las tablas correspondientes.
¡Copiado!
cas;
/* Créer quelques tables avec des noms contenant des caractères spéciaux */
data casuser.donnees_2023_Q1; ID=1; Val=10; run;
data casuser.donnees_2023_Q2; ID=2; Val=20; run;
data casuser.donnees_2024_Q1; ID=3; Val=30; run;
data casuser.rapport_final; ID=4; Val=40; run;
/* Rechercher toutes les tables dont le nom commence par "donnees_" et contient "2023",
en utilisant le caractère joker '%' et en désactivant wildIgnore pour qu'il soit interprété */
proc cas;
table.tableInfo result=r_wildcard /
name="donnees_2023_%"
caslib="casuser"
wildIgnore=FALSE;
print r_wildcard;
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;
4 Bloque de código
DATA STEP / PROC CAS Data
Explicación : Este ejemplo destaca el uso de `wildEscape` en combinación con `wildIgnore=FALSE`. Se crea una tabla con un '%' en su nombre, que normalmente se interpretaría como un comodín. Al usar `wildEscape="\\"` (doble barra invertida porque la barra invertida es en sí misma un carácter de escape en las cadenas SAS) y `name="resultat_final_\%_test"`, el '%' se trata como un carácter literal. El segundo bloque muestra cómo listar todas las tablas de un caslib usando '%' como comodín cuando `wildIgnore=FALSE`.
¡Copiado!
cas;
/* Créer une table dont le nom contient un caractère spécial à échapper */
data casuser."resultat_final_%_test";
ID=10;
Score=95.5;
run;
/* Tenter de trouver la table en utilisant un joker pour le nom et un caractère d'échappement */
proc cas;
table.tableInfo result=r_escape /
name="resultat_final_\%_test" /* Cherche le '%' littéral */
caslib="casuser"
wildIgnore=FALSE /* Active l'interprétation des jokers */
wildEscape="\\"; /* Indique que '\' est le caractère d'échappement */
print r_escape;
run;
/* Autre exemple : Lister toutes les tables dans casuser */
proc cas;
table.tableInfo result=r_all /
name="%"
caslib="casuser"
wildIgnore=FALSE;
print r_all;
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;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.