Brand new to SAS programming so I am taking it slow. I have an intermediate background in SQL so I have been taking existing SAS programs and using PROC SQL to attempt recreate the actions being done in the code I have been given. Back-translating if you will, like reverse engineering something in order to learn how something works. However, I am at a loss (not the first I am sure) as to why my code is not pulling from SQL tables correctly. After I set my libraries up (libname SQL oledb udl_file="C:\dir\subdir\EXAMPLE.udl";), the code I have is:
data TEST;
set SQL.TEST;
run;
This runs fine and I get my variables into my work library fine. I check the work.test and everything is there and all the attributes are fine. But if I try and reproduce this using proc sql, my attributes are different from what is set in the SQL table.
proc sql;
connect to odbc (dsn=EXAMPLE);
create table TEST as select * from connection to
odbc(select * from EXAMPLE.dbo.TEST);
disconnect from odbc;
quit ;
Basically my attribute LENGTH is doubled on some of my variables and not on others. What logic am I missing here?