Hi All,
I need to delete few records in an oracle table from a SAS program directly.
My program is below,
libname abc oracle path=path1
schema=schema1 user=user11 password=XXXXXXXX readbuff=10000;
proc sql;
delete from abc.table1 where flag='T';
quit;
Is the above logic will work?
Do we need to give commit statement?
Thanks
Jagathis
TBH I have not used the libname statement to do these things. I would write it (may need to check syntax):
proc sql;
connect to oracle (...);
execute by oracle(delete ...);
execute by oracle(commit);
quit;
Can check the operation in Toad or Oracel Dev to see what works, then copy the code over into the SQL statement. Other questions include: do you have permission to do this? Is this a wise thing to be doing - I would suggest that removing data would be better off going through the OC system rather than via third party.
Hi RW9,
Yes... I have access to do this activity.
I am not sure, whether this way will be an efficient one, and so i posted here to get the suggestion on this.
What is OC?
Thanks
Jagathis
Your code looks to have correct syntax.
There are SAS options to control COMMITS but usually experimentation is required to optimise the right number. The RW9 solution may give you better control.
Yes, OC=Oracle Clinical, should be the same for just Oracle though.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.