Help using Base SAS procedures

Sql server connect

Reply
Frequent Contributor
Posts: 125

Sql server connect

Hi ,

I have a code  . I ran the code but i am getting an error . Can anyone pls help

 

 

ERROR: Describe error: IColumnsInfo::GetColumnInfo failed. : Deferred prepare could not be completed.: Statement(s) could not be

prepared.: Incorrect syntax near 'dt'.

 

 

proc sql OUTOBS=10;
connect to oledb as cnt
(init_string
="Provider=SQLOLEDB.1;Integrated Security=yy;Persist Security Info=True;Initial Catalog=price;Data Source=yy" schema=dbo);

create table gg as

select * from connection to cnt (select
                                cc.x,
                                cct.y,
                                 cc.z,
                                 cc.n,
                                 cct.l,
                                 cct.k
 
FROM yu cct
left outer JOIN Check cc on cc.x = cct.y
where date >= '30MAR2015:00:00:00'dt and cct.VDATE is null;
);
disconnect from oledb;
quit;
      

Regular Contributor
Posts: 161

Re: Sql server connect

[ Edited ]
Posted in reply to chennupriya

Try changing to 

where date >= datepart ('30MAR2015:00:00:00'dt) 

Good Luck...!!! 

Kannan Deivasigamani
Frequent Contributor
Posts: 125

Re: Sql server connect

its the same error :-(

Super User
Posts: 3,260

Re: Sql server connect

Posted in reply to chennupriya

You are using PASSTHRU to SQL Server so your SQL must conform to what SQL Server accepts, not SAS and using DT on a datetime string is a SAS-specific syntax. Try:

 

where date >= '2015-03-30'

Ask a Question
Discussion stats
  • 3 replies
  • 422 views
  • 0 likes
  • 3 in conversation