BookmarkSubscribeRSS Feed
Calcite | Level 5



I'm using RLS libnames to DB2.

Performing SAS native sql over tables in those libraries.

Sas tries to perform the request ON db2, by implicit translation

to db2 code.

If it fails(for example because of using an un supported function),

the tables are moved to SAS and the Query is performed on the SAS server.

This might take long time and also might produce different results then on db2.

Therefore I'd like in such cases to return ERROR to SAS and avoid running it on SAS.

Is there such option?

Remark: direct passthrough is not a good solution for us...







@boazos When you use LIBNAME access to a database, the SAS system ensures that you get the result specified by your SAS code. It will push as much processing as possible into the database using native DBMS SQL, then bring the result set back to SAS to finish processing. You can't control how much processing is done in the database vs. how much gets done in SAS. If you want to ensure a certain process is conducted in the database, the only way I know of doing that is to use the SAS/ACCESS pass-through facility (explict pass-through) where you write the DBMS SQL yourself.  

Check out my Jedi SAS Tricks for SAS Users


Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.


Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 1 like
  • 2 in conversation