Hi,
I was trying to use SET statement to pull data from a dataset.
It says the name is too long . It was named that way in the "apple library "
data WANT;
SET apple. HOSPITALREADMISSIONDATASUMMARYINFORMATION;
WHERE put(accountid,accounts.)="true";
RUN;
THE TABLE IS NAMED LIKE THAT IN sql SERVER AND I AM USING LIBNAME STATEMENT TO CONNECT TO THAT TABLE
ERROR 307-185: The data set name cannot have more than 32 characters.
Could you please help me understand the concept?
The concept is simple. SAS supports table names (and variable names) up to 32 characters long.
If you have a table in your SQL database with a name longer than that then you need to rename it or create a view to it that uses a shorter name.
If you cannot get it renamed then you will need to use passthrouh SQL instead of LIBNAME to reference the table.
proc sql ;
connect using apple;
create table want as select *
from connection to apple
(select * from HOSPITALREADMISSIONDATASUMMARYINFORMATION)
WHERE put(accountid,accounts.)="true";
quit;
The concept is simple. SAS supports table names (and variable names) up to 32 characters long.
If you have a table in your SQL database with a name longer than that then you need to rename it or create a view to it that uses a shorter name.
If you cannot get it renamed then you will need to use passthrouh SQL instead of LIBNAME to reference the table.
proc sql ;
connect using apple;
create table want as select *
from connection to apple
(select * from HOSPITALREADMISSIONDATASUMMARYINFORMATION)
WHERE put(accountid,accounts.)="true";
quit;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.