To invoke the ACCESS procedure, you use the options
described in
Using PROC ACCESS Statement Options and certain procedure statements. The options and statements
that you choose are determined by your task.
-
To create an access descriptor, use the following statements:
PROC ACCESS DBMS=Datacom;
CREATE libref.member-name.ACCESS;
database-description statements;
optional
editing statements;
RUN;
-
To create an access descriptor and a view descriptor in the same procedure, use
the following statements:
PROC ACCESS DBMS=Datacom;
CREATE libref.member-name.ACCESS;
database-description statements;
optional
editing statements;
CREATE libref.member-name.VIEW;
SELECT item-list;
optional
editing statements;
RUN;
-
To create a view descriptor from an existing access descriptor, use the following
statements:
PROC ACCESS DBMS=Datacom ACCDESC=
libref.access-descriptor;
CREATE libref.member-name.VIEW;
SELECT item-list;
optional
editing statements;
RUN;
-
To update an access descriptor, use the following statements:
PROC ACCESS DBMS=Datacom;
UPDATE libref.member-name.ACCESS;
procedure statements;
RUN;
-
To update a view descriptor, use the following statements:
PROC ACCESS DBMS=Datacom;
UPDATE libref.member-name.VIEW;
procedure statements;
RUN;
Note that when you update an access descriptor (for example, drop another
field from the display), the view descriptors based on this access descriptor are not updated
automatically. You must
re-create or modify any view descriptors that you want to reflect the changes made
to the access descriptor. Altering a DBMS table can invalidate both access descriptors
and view descriptors.
CAUTION:
Updating
access descriptors does not automatically update view descriptors.
When you update an access descriptor (for example, drop another field from the display),
the view descriptors based on this access descriptor are not updated automatically.
You must
re-create or modify any view descriptors that you want to reflect the changes made
to the access descriptor. The view descriptors would still be valid, but they would
no longer match the access descriptor. However, in some situations the view descriptors
would no longer be valid (for example, if you re-create an access descriptor with
the same name but base it on a different CA-Datacom/DB table).
CAUTION:
Altering CA-Datacom/DB tables can affect
descriptor files.
Altering a
CA-Datacom/DB table that has descriptor files defined on it might cause these descriptors to be
out-of-date or invalid. For example, if you add a field to a table and an existing
access descriptor is defined on that table, the access descriptor does not reflect
the new field, but
it remains valid. However, if you delete a field or delete a table on which the view
descriptor is based, the view descriptor fails when executed. Therefore, you must
change the descriptor files manually
when changes to CA-DATADICTIONARY invalidate them.
Follow these steps to
change the descriptor files manually when changes to CA-DATADICTIONARY
invalidate them:
-
When you change CA-DATADICTIONARY, you must re-create the access descriptor(s) with
PROC ACCESS, using the same name(s).
-
Then you must edit each view descriptor with PROC ACCESS. You get a message if the
view descriptor differs from its access descriptor. Change the view descriptor as
needed.
The
SAS/ACCESS interface view engine does a rudimentary validation of a view descriptor upon opening it. For example,
the
engine checks the
data type information. If a problem is found, the engine writes a message to the log and stops.