Publié le :
ETL CREATION_INTERNE

Exemple de Chargement en Masse (Bulkload)

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script initialise des macros globales pour configurer les paramètres de bulkload (chemin, nom de base de données, hôte). Il procède ensuite à la création d'un jeu de données temporaire `work.DUBLKDAT` à l'aide d'un bloc `DATA STEP` avec des données inline (`cards;`). La partie principale utilise `PROC SQL` pour créer une table `mydblib.DUBLKTAB` dans un système de gestion de base de données (DBMS) externe, en spécifiant les options `BULKLOAD=YES` et en utilisant les macros globales pour les paramètres de connexion. Le script inclut également une `PROC PRINT` pour vérifier le contenu de la table chargée et une `PROC DELETE` pour nettoyer la table DBMS après exécution.
Analyse des données

Type : CREATION_INTERNE


Les données sont créées directement dans le script via un `DATA STEP` avec l'instruction `cards;`. Aucune source de données externe n'est lue par le script lui-même.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc `DATA STEP` crée un jeu de données temporaire nommé `work.DUBLKDAT` en utilisant des données fournies directement dans le script (inline) via l'instruction `cards;`. Les variables `name`, `age`, `sex` et `bdate` sont définies, `bdate` étant formatée comme une date SAS.
Copié !
1DATA work.DUBLKDAT;
2 INPUT name $ age sex $ bdate mmddyy.;
3 CARDS;
4amy 3 f 030185
5bill 12 m 121277
6charlie 35 m 010253
7david 19 m 101469
8elinor 42 f 080845
9pearl 78 f 051222
10vera 96 f 101200
11frank 24 m 092663
12georgia 1 f 040687
13henry 46 m 053042
14joann 27 f 020461
15buddy 66 m 101432
16;
17RUN;
2 Bloc de code
PROC SQL
Explication :
Cette `PROC SQL` crée une nouvelle table nommée `DUBLKTAB` dans la bibliothèque `mydblib` (qui représente une connexion à une base de données externe). L'option `BULKLOAD=YES` est spécifiée pour activer le chargement en masse, et des macros globales (`bl_path`, `bl_dbname`, `bl_host`) sont utilisées pour configurer les paramètres du chargeur en masse. Le contenu de la table est rempli en sélectionnant toutes les colonnes du jeu de données `work.DUBLKDAT` créé précédemment.
Copié !
1PROC SQL;
2create TABLE mydblib.DUBLKTAB (
3 BULKLOAD=YES
4 bl_path=&bl_path
5 bl_dbname=&bl_dbname
6 bl_host=&bl_host
7) as select * from work.DUBLKDAT;
8QUIT;
3 Bloc de code
PROC PRINT
Explication :
Cette `PROC PRINT` affiche le contenu de la table `mydblib.DUBLKTAB` qui a été chargée dans le DBMS. Le format `date7.` est appliqué à la colonne `bdate` pour une meilleure lisibilité. Un titre est également ajouté à la sortie.
Copié !
1PROC PRINT DATA=mydblib.DUBLKTAB;
2 FORMAT bdate date7.;
3title 'proc print of table';
4RUN;
4 Bloc de code
PROC DELETE
Explication :
Cette `PROC DELETE` est utilisée pour supprimer la table `mydblib.DUBLKTAB` du DBMS, effectuant ainsi un nettoyage après l'exécution de l'exemple.
Copié !
1PROC DELETE DATA=mydblib.DUBLKTAB;
2RUN;
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.
Informations de Copyright : S A S S A M P L E L I B R A R Y NAME: bulkload.sas TITLE: Sample Programs PRODUCT: SAS/ACCESS to Aster SYSTEM: z/OS, UNIX, WINDOWS REF: SAS/ACCESS 9 for Relational Databases: Reference