BookmarkSubscribeRSS Feed
boazos
Calcite | Level 5

Hello,

 

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...

 

Thanks!

Boaz

 

 

1 REPLY 1
SASJedi
Ammonite | Level 13

@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

sas-innovate-white.png

Special offer for SAS Communities members

Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.

 

View the full agenda.

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

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