Help using Base SAS procedures

Sql server connect

Reply
Frequent Contributor
Posts: 120

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 ]

Try changing to 

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

Good Luck...!!! 

Kannan Deivasigamani
Frequent Contributor
Posts: 120

Re: Sql server connect

its the same error :-(

Super User
Posts: 3,115

Re: Sql server connect

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
  • 355 views
  • 0 likes
  • 3 in conversation