PL/SQL: how to execute host-/system command without ext. procedure call
Hello,
I would like to execute a systemcall out of a PL/SQL-package (e.g. execute a shell script). Seems like that this is just possible with a external procedure call.
Are there any other solutions available?
Rgds
JH
With 10g you can use DBMS_SCHEDULER: see Re: Guide to External Jobs on 10g with dbms_scheduler e.g. scripts,batch fi
Similar Messages
-
How to execute Operating System commands from Stored procedure.
Any help on how to execute Operating System commands from stored procedures will be appreciated.
Nanditha.Search the forums for 'External Procedure' and you will find example code that has been posted before.
-
How to execute a system command with call executable in teststand 4.2.1?
Hi All,
how to execute a system command with "call executable" step in teststand 4.2.1?
example as i want to quit a application.using "taskkill /f /im xxx.exe".And execute other system command(DOS).
BR
JohnnyHi,
I want to run netstat -an | find "8080" command from command prompt using call executable in test stand. after that i would like take the std output to local variable.
Attachments:
callsettings.jpg 404 KB -
How to: execute operating system commands from PL/SQL
System: IBM pSeries AIX
Oracle: 11g Enterprise
Is there a quick way to execute operating system commands from PL/SQL?
Without creating a JAVA class....
I need to execute a Loader script.
I want to do this from within PL/SQL.
I need to to do 4 things.
Three require SQL scripts.
The fourth is SQL*Loader.
The usual way is with a UNIX script calling 3 SQL scripts and one Loader control file.
Is there way to do all this from within ONE PL/SQL SCRIPT ??
Just let me know.Is there a quick way to execute operating system commands from PL/SQL?
NO
Without creating a JAVA class....
I need to execute a Loader script.
I want to do this from within PL/SQL.
WHY ON EARTH, such action will create a new connection and become a resource hog?
I need to to do 4 things.
Three require SQL scripts.
The fourth is SQL*Loader.
The usual way is with a UNIX script calling 3 SQL scripts and one Loader control file.
Which is perfect for the purpose.
Is there way to do all this from within ONE PL/SQL SCRIPT ??
Just let me know.
NO, there is NOT. Nor should there be. Why create unstable ineffcient Mickey Mouse systems, glued together by hacking?
Sybrand Bakker
Senior Oracle DBA -
How to execute a system command on a remote UNIX server?
I would like to execute a system command (for example "df") on a remote UNIX machine.
A simple example would be welcome...
ThanksI would like to execute a system command (for example
"df") on a remote UNIX machine.
A simple example would be welcome...None will be forthcoming.
Executing a process is relatively simple. However doing this on a remot system is another matter.
See http://sourceforge.net/projects/sshtools/
and/or http://javassh.org/space/start
Other resources to be found with Google. -
How to execute operation system commands by using TSQL without enabling xp_cmdshell.
Hi Experts
Looking for advise if one can use operation system commands using TSQL without enabling xp_cmdshell.
actually using xp_cmdshell requires sysadmin privs which I am unable to provide (directly or using proc) to a user but the user needs some operating system commands to execute for file manipulation from sql server session. Please share your thought.
Best Regards
khalil>but the user needs some operating system commands to execute for file manipulation from sql server session
See article here
http://www.mssqltips.com/sqlservertip/2014/replace-xpcmdshell-command-line-use-with-sql-server-agent/:
"Problem
I need to run something from the command-line, but based on best practices xp_cmdshell has been disabled. The task that needs to run is an internal process that will originate from within SQL Server. Is there a way to do this without using xp_cmdshell?
Solution
The use of xp_cmdshell is generally frowned upon and is now recommended to be disabled, unless it is absolutely necessary. There is a solution that works around this restriction via the use of SQL Server Agent.
Wherever SQL Server is installed, SQL Server Agent is installed with it (except for SQL Express). SQL Server Agent has the ability to run job steps which invoke the command shell. And in the case that the job is owned by a member of the sysadmin fixed server
role, the job will execute as the service account under which the SQL Server Agent is running. "
Kalman Toth Database & OLAP Architect
SQL Server 2014 Database Design
New Book / Kindle: Beginner Database Design & SQL Programming Using Microsoft SQL Server 2014 -
Executing operating system command within trigger or procedure
Hello
Can some one help me out as how to execute operating system command (unix or windows ex.. stop,start,cc,del or copy etc...) in a trigger or procedure.
My requirement is, if some predefined error occure then listener listener should be stopped automatically.
Thanks in advance
kvssHere is some code to tell you how to do:
First a small Java program that taker a string as a parameter and executes it as an os-command
import java.lang.Runtime;
import java.lang.Process;
public class Commands extends Object {
* Constructor
public Commands() {
// On NT the command should be like this "cmd /c del c:\temp\readme.txt"
// exec execute('cmd /c del c:\temp\readme.txt');
public static void execute (String cmd ) {
try {
Process p = Runtime.getRuntime().exec(cmd);
try {
p.waitFor();
catch (java.lang.InterruptedException intex ) {
intex.printStackTrace();
System.out.println("Return = "+ p.exitValue());
System.out.println(" Done ...");
catch ( java.io.IOException iox) {
iox.printStackTrace();
===================end of java ====
Use loadjava to load it into the database and create a pl/sql wrapper around the java code.
See the manual about loadjava details.
Log in to sqlplus as SYSTEM and create a role for this purpose e.g. 'JAVA_ROLE'
and exec the following as SYSTEM or SYS to make sure the user has the the needed privs.
dbms_java.grant_permission('JAVA_ROLE','SYS:java.io.FilePermission','<<ALL FILES>>','read,write,execute,delete');
dbms_java.grant_permission('JAVA_ROLE','SYS:java.lang.RuntimePermission','writeFileDescriptor',null);
dbms_java.grant_permission('JAVA_ROLE','SYS:java.lang.RuntimePermission','readFileDescriptor',null);
and you're done. -
Execute Unix Mail Command from Store Procedure
Hi Colleagues!
I designed a store procedure that Monitoring some Critical tables in my Oracle 8.0.6.1.0 Database But I need to send some Emails from the Store Procedures to Information System Staff when the amount of rows increase too much. I read about UTL_SMTP but my database version is too old to run this package. Also I have the option of Maildemo8i that execute MS Oulook from a Client System But I looking to Send it from my Database(OS HPUX). So please take a look of this issue and I will appreciate any help.
Your Friend.
Emmanuel Carrillo Trejos.
LNB, Republic of Panama(Central America).
P.D. You can email to: [email protected]Do you mean that you want to execute mail or mailx unix commands to send mails.If i am right then probably you are looking for a way to execute operating system commands from your procedure.
You can refer this link if you want to do that. You need java support in your Oracle database and i believe that Oracle 8 does have jvm running in the instance.
http://asktom.oracle.com/pls/ask/f?p=4950:8:5079825575573830264::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:952229840241
Thank you! -
Vista: use the windows program manager to execute operating system commands
attempting to run forms 6 on vista... the forms app attempts a call sqlplus using the host builtin to populate some tables before calling the report.
in windows vista i get a message box indicating "use the windows program manager to execute operating system commands".
is this windwos vista message? would this have to do with permissions?
any insight most appreciated and thanks in advance.I don't know about the HOST-problem, but..
the forms app attempts a call sqlplus using the host builtin to populate some tables before calling the report.What about putting the logic from the SQL*Plus-scripts into a database-procedure and call that instead. I think,, with the current approach you will get problems at least when you have to migrate to Web (e.g. Forms 10g). -
How to use Operating System Commands while using define in sqlplus
How to use Operating System Commands while using define in sqlplus . The Host OS is Linux
define report_name=PROD_${host date "+%b"}.html
The above is not working.
The output should be
define report_name=PROD_JAN.html
Regards,
DBof course I was talking nonsense: the problem here is the mixing of bind variables and DEFINE variables.
With the following changes the script should work (the conditions for begin_interval_time are perhaps not what you want):
variable snap1 number
variable snap2 number
variable rptname varchar2(20)
begin
SELECT min(snap_id) into :snap1 FROM dba_hist_snapshot WHERE CAST(begin_interval_time AS DATE) >= SYSDATE-1;
SELECT max(snap_id) into :snap2 FROM dba_hist_snapshot WHERE CAST(begin_interval_time AS DATE) >= SYSDATE-1;
end;
col file_name_value new_value report_name noprint
select 'PROD_'|| to_char(sysdate,'MON') || '_' || to_char(sysdate,'DD') file_name_value from dual;
define report_type = 'html'
define num_days=2
define begin_snap=:snap1
define end_snap=:snap2
@@?/rdbms/admin/awrrpt.sql -
How to execute dir dos command in Runtime Execution
Hi All,
Does anybody know how to execute the dir command in DOS in the runtime execution
for example,
when we open the command prompt,
c:\Documents and Settings\java> e:
e:\cd java
e:\dir *.*
how we can list the directory in runtime execution?Process childProcess = Runtime.getRuntime().exec("cmd /C dir *.*");or try with
ProcessBuilder pb = new ProcessBuilder("cmd /C dir *.*");
Process childProcess = pb.start();
NOTE: We can use the ProcessBuilder class from J2SE 5.0+.
for further reference check the below link
http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html?page=3
and don't forget to go through API documentation for java.lang package
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/package-summary.html
and if you want to implement it through Java which provides you a list of Files & directories in the present directory here is an example of such code snippet REF:as insisted by my fellow poster.
File file = new File("<present_directory_path>");
if(file.isDirectory()){
String fileNames[] = file.list();
for(String fileName:fileNames)
System.out.println(fileName);
fileNames = null;
or for detailed info use
File files[] = file.listFiles();
for(File fileEntity:files)
System.out.println("FILENAME:"+fileEntity.getName+",IS FOLDER:"+fileEntity.isFolder()+",ABSOLUTE PATH:"+fileEntity.toString()+"FILE SIZE:"+fileEntity.length());
files = null;
}and please do not forget to go through File API Documentation provided as recommended by my fellow poster.
hope this might help :)
REGARDS,
RaHuL -
How can I pass system commands from a java program? Urgent!
hi,
I have been trying this out since a long time. How do I send system commands to command.com or cmd.exe from a java program and an output of the executed command back to the java application.
If u have any idea, or have any information about the kind os application reply back.
Thanks
Deepa DatarThis is the code which I tried, but it displays only the title of MS-DOS, something like " Microsoft Corp...etc ". But doesn't take any input, and the subprocess(cmd.exe) hangs.
import java.io.*;
public class cmddemo2
public static void main(String arg[])
try
System.out.println("cmd");
Process p=Runtime.getRuntime().exec("cmd.exe");
DataInputStream din=new DataInputStream(p.getInputStream());
DataOutputStream dout=new DataOutputStream(p.getOutputStream());
System.out.println("after streams");
String s;
dout.writeChars("type cmddemo2.java");
while((s=din.readLine())!="\n")
System.out.println(s);
dout.writeChars("dir");
String s1;
while((s1=din.readLine())!="\n")
System.out.println(s1);
System.out.println("over");
catch(Exception e)
{ System.out.println("Exception : "+e); -
How to execute Linux OS command from ODI
We have installed Oracle data integrator on windows machine and want to execute linux OS command in a procedure or scenario from ODI .
How could i do that ?
I can see os command elements but they do not work, only windows commands work.There should be linux technology i thinkObviously you can execute Unix OS commands only on Unix OS. Why do you expect Windows to understand it?
The solution in your case would be executing your ODI scenarios with an Agent installed on Unix machine.
Cheers -
How to execute multiple queries in one stored procedure.
Hi,
I am Kumar,
How to execute multiple queries in one stored procedure.
here is the my requirements,
1. get the max value from one table and sum of the that value.
2. insert the values and also sum of the max value.
using stored procedure
I am using SQL server 2000 database.
Please help me.
Advance thanks
by,
KumarThis is not a java question and it is not even a problem: your only problem is
1) lack of knowledge
2) lack of interest to find a manual
But you are going to have to change both by actually reading a book or a manual that explains the stored procedure language of SQL Server. It is the same as Sybase I think, so you could also look for a manual for that DBMS. -
Execute exp&imp command by store procedure
Dear all,
I have some statements to run before and after exp&impdata.
Is there anyway to execute exp&imp command in store procedure,Pls show me.
example
CREATE OR REPLACE PROCEDURE test
BEGIN
update ....
exp user/passwd ....
delete ...
END ;
Oracle 10g on solaris10
Thank you for advance
CharaHi,
Since you are working with Oracle10gm you may check DBMS_DATAPUMP:
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_datpmp.htm
Or like any shell command, you can use java programs.
Saad,
http://saadnayef.blogspot.com
Maybe you are looking for
-
Hi all, Have created a new window in one of the scripts recently. I was asked to display this window( with some data) only for company code NL01. So I kept the condition , IF reguh-zbukr = 'NL01'..and wrote the code.. Now Im asked to extend the func
-
Sent Mail not found in sent file
This started a few weeks ago. Sometimes when I send a new message, it does not show up in my sent file, leaving me wondering if it was sent at all, and preventing me from reviewing the email too. I looked in preferences for MAIL and I do not se
-
Transitions not working in Premiere
Okay so, I have a sequence in premiere, and cross dissolve isn't working. I tried a few other transitions and they seemed to be working fine, but cross dissolve is the one that I need. There are effects in different parts of the sequence that were do
-
HP P1005 won't print anymore?
We have a HP P1005 Laserjet (just out of warranty!) that has suddenly stopped responding to print commands. Ran the HP Diagnostic - which usually resolves any print que issues for us but still won't print! Then tried to STOP/START the print spooler m
-
Missing hard disk space after sims 3 force quit
Hi, I failed to notice I had to update to the latest version of Leopard to install the game with the result that the installer got stuck repeatedly half way through and I could only force quit the installer. The downside to this is that I did this tw