?>Array ( [lang] => es [id] => 186 )
Scénario de test & Cas d'usage
Se crean dos tablas de tasas de cambio. La primera ('tasas_v1') contiene las tasas iniciales, incluyendo un valor nulo para probar su manejo. La segunda ('tasas_v2') representa una actualización que se usará para probar la sobrescritura.
| 1 | DATA tasas_v1; |
| 2 | LENGTH Moneda $3; |
| 3 | INPUT Moneda $ Tasa; |
| 4 | CARDS; |
| 5 | USD 1.00 |
| 6 | EUR 0.92 |
| 7 | GBP . |
| 8 | JPY 148.5 |
| 9 | ; |
| 10 | RUN; |
| 11 | |
| 12 | DATA tasas_v2; |
| 13 | LENGTH Moneda $3; |
| 14 | INPUT Moneda $ Tasa; |
| 15 | CARDS; |
| 16 | USD 1.00 |
| 17 | EUR 0.93 |
| 18 | GBP 0.79 |
| 19 | CAD 1.35 |
| 20 | ; |
| 21 | RUN; |
| 1 | DATA casuser.tasas_cambio_global(replace=true promote=true copies=2); |
| 2 | SET work.tasas_v1; |
| 3 | RUN; |
| 1 | /* Este paso generará un error intencionadamente */ |
| 2 | DATA casuser.tasas_cambio_global; |
| 3 | SET work.tasas_v1; |
| 4 | RUN; |
| 1 | DATA casuser.tasas_cambio_global(replace=true promote=true copies=2); |
| 2 | SET work.tasas_v2; |
| 3 | RUN; |
| 1 | PROC CAS; |
| 2 | TABLE.tableInfo / caslib='casuser' name='tasas_cambio_global'; |
| 3 | RUN; |
| 4 | QUIT; |
| 5 | PROC PRINT DATA=casuser.tasas_cambio_global; |
| 6 | RUN; |
La tabla 'tasas_cambio_global' se crea con éxito y es visible globalmente. El intento de sobrescritura en el paso 2 debe fallar con un error en el log de SAS. El paso 3 debe ejecutarse correctamente, actualizando la tabla. La verificación final debe mostrar que la tabla tiene alcance 'Global' y contiene las 4 filas de 'tasas_v2', confirmando que la protección contra sobrescritura y la actualización explícita funcionan como se espera.