proc sql;
create table tablelist as select MEMNAME as table_list from dictionary.tables where libname="S_ICE";
quit;
I have got a note that " 10 tables are not returned as name is too long ".
How can I overcome this problem.I understand that sas datasets have naming constraints and this note is because of that. I cannot pass through sql as dictionary.tables will not be available as shown in example code
proc sql;
connect using mylib;
create table t as select * from connection to mylib
(select * from my_table_with_a_name_so_long_that_it_is_longer_than_any_single_line_of_a_program_should_be
);
quit;
In the DB, have views defined for those tables with names that honor the SAS limits.
How long is the table name you are trying to query? Using SQL Passthru as in your example should work to read table names longer than 32 characters which is the SAS table name limit.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.