Die Beispiele verwenden generierte Daten (Datalines) oder SASHELP, sowie Verweise auf fiktive SQL Server-Tabellen.
1 Codeblock
CASLIB Data
Erklärung : Dieser Beispiel stellt eine grundlegende Verbindung zwischen dem CAS-Server und einer Microsoft SQL Server-Datenbank her. Die CAS-Bibliothek 'SQLservercaslib' wird erstellt, wobei der Quelltyp 'sqlserver', ein Benutzername, ein Passwort und ein für die Verbindung konfigurierter DSN (Data Source Name) angegeben werden.
Kopiert!
caslib SQLservercaslib desc='Microsoft SQL Server Caslib'
dataSource=(srctype='sqlserver',
username='myuser1',
password='myPwd',
sqlserver_dsn='dbsqlserver');
1
caslib SQLservercaslib desc='Microsoft SQL Server Caslib'
2
dataSource=(srctype='sqlserver',
3
username='myuser1',
4
password='myPwd',
5
sqlserver_dsn='dbsqlserver');
2 Codeblock
PROC CASUTIL Data
Erklärung : Dieses Beispiel zeigt, wie eine Tabelle namens 'mySQLsvrdata' (hier simuliert durch einen DATA-Schritt) von einer Quell-Caslib (für dieses eigenständige Beispiel als CASUSER simuliert) in die Caslib 'casuser' geladen wird, unter Verwendung von PROC CASUTIL. Die geladene Tabelle wird in 'class_from_SQLservercaslib' umbenannt. Die Befehle 'list files' und 'contents' werden verwendet, um das Laden zu überprüfen und die Struktur der neuen CAS-Tabelle zu inspizieren. Die Option 'replace' ermöglicht das Ersetzen der Tabelle, falls sie bereits existiert.
Kopiert!
/* Création d'une table SQL Server fictive pour l'exemple */
data casuser.mySQLsvrdata;
input ID Name $ Age Score;
datalines;
1 John 30 85
2 Jane 24 92
3 Mike 35 78
4 Emily 29 88
;
run;
proc casutil;
/* Supposons que SQLservercaslib est déjà définie comme dans l'exemple 1 */
/* list files incaslib="SQLservercaslib"; */
load casdata="mySQLsvrdata" incaslib="CASUSER" outcaslib="casuser"
casout="class_from_SQLservercaslib" replace;
list files incaslib="casuser";
contents casdata="class_from_SQLservercaslib" incaslib="casuser";
quit;
1
/* Création d'une table SQL Server fictive pour l'exemple */
2
DATA casuser.mySQLsvrdata;
3
INPUT ID Name $ Age Score;
4
DATALINES;
5
1 John 3085
6
2 Jane 2492
7
3 Mike 3578
8
4 Emily 2988
9
;
10
RUN;
11
12
PROC CASUTIL;
13
/* Supposons que SQLservercaslib est déjà définie comme dans l'exemple 1 */
Erklärung : Dieser Beispiel veranschaulicht einen Massen-Upload von Daten aus einer CAS-Tabelle ('TEST1') in einen ADLS2-Speicher über einen Microsoft SQL Server-Konnektor. Zuerst wird die Azure Tenant ID über die Session-Optionen konfiguriert. Die CAS-Bibliothek 'sqls' wird mit SQL Server-Verbindungsdetails und Azure-Authentifizierungsinformationen (Identität und Secret für Shared Access Signature) definiert. Anschließend wird die Prozedur `CASUTIL` verwendet, um die Tabelle 'TEST1' in der Caslib 'sqls' zu speichern, wobei der Massen-Upload (bulkload=true) aktiviert und Optionen wie das Standard-Temporärverzeichnis ('defaultdir'), der Name des Azure-Speicherkontos, die Anwendungs-ID und das Dateisystem angegeben werden.
Kopiert!
/* Création d'une table CAS fictive pour le chargement */
data casuser.TEST1;
input ProductID $ Quantity SaleDate:yymmdd10.;
format SaleDate yymmdd10.;
datalines;
PROD_A 10 2023-01-15
PROD_B 25 2023-02-20
PROD_C 12 2023-03-01
PROD_A 8 2023-03-10
PROD_D 40 2023-04-05
;
run;
options cassessopts=(azuretenantid="user-tenant-id");
caslib sqls datasource=(srctype='sqlserver',
database='datasource_db',
username='user-id',
password='password',
schema='myschema',
identity='Shared Access Signature',
secret='shared-access-signature-value',
deleteDataFiles=true);
proc casutil incaslib="CASUSER" outcaslib="sqls";
save casdata="TEST1" casout="test1_out"
options={bulkload=true,
defaultdir='/temp_azure_dir',
accountName='azurestorageaccount',
applicationId='azure-application-id',
fileSystem='azureblobfilesystem',
compress=false} replace;
run;
1
/* Création d'une table CAS fictive pour le chargement */
Erklärung : Dieser erweiterte Beispiel zeigt, wie Daten aus einer SQL Server-Tabelle (hier simuliert durch 'Orders_SQL' in 'CASUSER') in eine neue CAS-Tabelle namens 'RecentOrders_CAS' in der Caslib 'casuser' geladen werden. Es wird eine WHERE-Klausel verwendet, um die Datensätze nach Datum ('OrderDate >= "01JAN2024"d') zu filtern, und die Option 'importoptions=(vars(...))', um nur bestimmte Spalten ('OrderID', 'CustomerID', 'TotalAmount') auszuwählen. Die Option 'promote' macht die geladene Tabelle global in der CAS-Sitzung verfügbar. Eine SQL Server-Caslib ('sqlserver_conn') ist ebenfalls definiert, um eine Verbindung zu einem bestimmten Schema ('Sales') zu veranschaulichen.
Kopiert!
/* Préparation d'une caslib pour simuler des données SQL Server */
data casuser.Orders_SQL;
input OrderID CustomerID $ OrderDate:yymmdd10. TotalAmount;
format OrderDate yymmdd10.;
datalines;
101 CUST001 2023-01-10 150.75
102 CUST002 2023-02-05 200.00
103 CUST001 2023-03-20 120.50
104 CUST003 2024-01-01 300.00
105 CUST002 2024-02-15 50.25
106 CUST004 2024-03-10 450.00
;
run;
/* Connexion à SQL Server (simulée) */
caslib sqlserver_conn desc='Connexion SQL Server pour Données de Ventes'
dataSource=(srctype='sqlserver',
username='myuser1',
password='myPwd',
sqlserver_dsn='dbsqlserver_prod', /* DSN d'une base de production */
schema='Sales'); /* Schéma spécifique */
/* Chargement des données filtrées dans une nouvelle table CAS */
proc casutil;
load casdata="Orders_SQL" incaslib="CASUSER" casout="RecentOrders_CAS" outcaslib="casuser"
promote /* Rend la table visible pour toutes les sessions */
where='OrderDate >= "01JAN2024"d' /* Filtre pour les commandes après le 1er janvier 2024 */
importoptions=(vars=('OrderID' 'CustomerID' 'TotalAmount')); /* Sélectionne des colonnes spécifiques */
list files incaslib="casuser";
contents casdata="RecentOrders_CAS" incaslib="casuser";
quit;
1
/* Préparation d'une caslib pour simuler des données SQL Server */
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Zugehörige Dokumentation
Aucune documentation spécifique pour cette catégorie.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.