Suppose you have a SAS 6
data set, Ver6.SSNums, which contains some customer names and Social Security numbers. You
want to update this data set with data that is described by Vlib.SSName, a view descriptor
based on the CUSTOMER
segment of the IMS
database AcctDBD. Since this requires you to first sort the data then create an output data
set with the sorted data, this is a good situation for using VALIDVARNAME=V6.
To perform the update,
you would enter the following SAS statements:
options validvarname=V6;
options nodate linesize=80;
libname ver6 'SAS-data-library';
proc sort data=ver6.ssnums;
by ssnumb;
run;
proc print data=ver6.ssnums;
title2 'VER6.SSNUMS Data File';
run;
proc sort data=vlib.ssname out=mydata.newnums;
by ssnumb;
run;
proc print data=mydata.newnums;
title2 'Data Described by MYDATA.NEWNUMS';
run;
data mydata.newnames;
update ver6.ssnums mydata.newnums;
by ssnumb;
run;
proc print data=mydata.newnames;
title2 'MYDATA.NEWNAMES Data File';
run;
The new SAS data file MyData.NewNames is a SAS 6 data file stored in a SAS 6 library
associated with the
libref MyData.
The following three
outputs show the results of PRINT procedures for the original data
file, the transaction data, and the updated data file.
Data in the Data File to Be Updated, Ver6.SSNums
The SAS System
VER6.SSNUMS Data File
OBS SSNUMB NAME
1 267-83-2241 GORDIEVSKY, OLEG
2 276-44-6885 MIFUNE, YUKIO
3 352-44-2151 SHIEKELESLAM, SHALA
4 436-46-1931 NISHIMATSU-LYNCH, CAROL
Data That Is Described by Updated Data File MyData.NewNums
The SAS System
Data Described by MYDATA.NEWNUMS
OBS SSNUMB NAME
1 156-45-5672 O'CONNOR, JOSEPH
2 178-42-6534 PATTILLO, RODRIGUES
3 234-74-4612 WIKOWSKI, JONATHAN S.
4 434-62-1224 SMITH, JAMES MARTIN
5 434-62-1234 SUMMERS, MARY T.
6 436-42-6394 BOOKER, APRIL M.
7 456-45-3462 LITTLE, NANCY M.
8 657-34-3245 BARNHARDT, PAMELA S.
9 667-73-8275 WALLS, HOOPER J.
10 667-82-8275 COHEN, ABRAHAM
Results of Updating a SAS 6 Data File with IMS Data
The SAS System
MYDATA.NEWNAMES Data File
OBS SSNUMB NAME
1 156-45-5672 O'CONNOR, JOSEPH
2 178-42-6534 PATTILLO, RODRIGUES
3 234-74-4612 WIKOWSKI, JONATHAN S.
4 267-83-2241 GORDIEVSKY, OLEG
5 276-44-6885 MIFUNE, YUKIO
6 352-44-2151 SHIEKELESLAM, SHALA
7 434-62-1224 SMITH, JAMES MARTIN
8 434-62-1234 SUMMERS, MARY T.
9 436-42-6394 BOOKER, APRIL M.
10 436-46-1931 NISHIMATSU-LYNCH, CAROL
11 456-45-3462 LITTLE, NANCY M.
12 657-34-3245 BARNHARDT, PAMELA S.
13 667-73-8275 WALLS, HOOPER J.
14 667-82-8275 COHEN, ABRAHAM
For more information
about the UPDATE statement, see SAS Statements: Reference.