DATA Step, Macro, Functions and more

How do I write to an oracle table with name >32 Char

Accepted Solution Solved
Reply
Contributor
Posts: 31
Accepted Solution

How do I write to an oracle table with name >32 Char

Hi.

 

Is it possible to write to an Oracle table thats name is longer than 32 Char?  I am able to read it using SQL Passthrough as suggested in several other threads, but when I try to insert some rows, i get...

"ERROR 65-58: Name 'WP_MARKETINGPROMOTIONSELIGIBILITY_BKUP' is too long for a SAS name in this context."

 

I am using the code below.  Am I missing something, or is writing not possible?

 

data test;

input cardcode $ promoid took $ segmentatdrop $ presented $ presenteddate presentedby;

cards;

S123456 3000 N Fringe Y . 999

S123457 3000 N Fringe N . 999

S123458 3000 N Fringe N . 999

run;

 

proc sql;

connect to odbc as myconn (datasrc=Prod user=sas password="edited" readbuff=3000);

insert into WP_MarketingPromotionsEligibility_bkup (cardcode, promoid, took, segmentatdrop, presented, presenteddate, presentedby)

select * from test;

disconnect from myconn;

quit;

 

Thanks!

 


Accepted Solutions
Solution
‎11-04-2016 08:54 AM
Super User
Posts: 3,260

Re: How do I write to an oracle table with name >32 Char

[ Edited ]
Posted in reply to stuart_snap

Your insert into is not in a PASSTHRU step:

 

proc sql;
connect to odbc as myconn (datasrc=Prod user=sas password="edited" readbuff=3000);
execute (
insert into WP_MarketingPromotionsEligibility_bkup (cardcode, promoid, took, segmentatdrop, presented, presenteddate, presentedby)) by myconn;
disconnect from myconn;
quit;

View solution in original post


All Replies
Solution
‎11-04-2016 08:54 AM
Super User
Posts: 3,260

Re: How do I write to an oracle table with name >32 Char

[ Edited ]
Posted in reply to stuart_snap

Your insert into is not in a PASSTHRU step:

 

proc sql;
connect to odbc as myconn (datasrc=Prod user=sas password="edited" readbuff=3000);
execute (
insert into WP_MarketingPromotionsEligibility_bkup (cardcode, promoid, took, segmentatdrop, presented, presenteddate, presentedby)) by myconn;
disconnect from myconn;
quit;
Super User
Posts: 5,435

Re: How do I write to an oracle table with name >32 Char

Posted in reply to stuart_snap
Or create a view with a name with 32 or less chars.
Data never sleeps
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 186 views
  • 0 likes
  • 3 in conversation