When a process (or child process exits) the resulting status is an 8 bit word. Therefore valid values in a status are 0-255 of signed or unsigned char if you like.
So: You cannot get values like ORA-0412 passed as 412.
You will have to write something to a log file, or insert into an oracle table.
Example: sqlplus does write errors to stderr, so if you redirect from inside a shell script you capture the error.:
Code:
sqlplus user/passwd@oracledb <<EOF 2 >> somerrorlog
WHENEVER SQLERROR EXIT SQL.SQLCODE
begin
SELECT COLUMN_DOES_NOT_EXIST FROM DUAL;
END;
EXIT;
EOF
This will appear in the file somerrorlog
Code:
SELECT COLUMN_DOES_NOT_EXIST FROM DUAL;
*
ERROR at line 2:
ORA-06550: line 2, column 10:
PLS-00201: identifier 'COLUMN_DOES_NOT_EXIST' must be declared
ORA-06550: line 2, column 3:
PL/SQL: SQL Statement ignored
This User Gave Thanks to jim mcnamara For This Post:
I have a procedure with an out parameter, I want to use this value in a shell script, I've done this in perl before but they want this to be a ksh script. what is the syntax to do this.
this was my first thought;
#!/usr/bin/ksh
sqlplus -s scott/tiger@db << EOF
... (1 Reply)
Hi,
Iam calling 3 sql scripts through one shell script 'rmia.sh'.
Till now this was working fine, but last time while calling the SQL scripts,
Oracle was down. But amazingly the exit status was '0' (success)!!!
Below is the shell code:
#!/usr/bin/ksh -x
assign_file asql a.sql 1... (15 Replies)
Hi,
I would like to run a job based on the output from the SQL output.
Eg: Select count(*) from A ...if count(*) = 1 then execute the next step or else exit.
Please advise.
Thanks
S (2 Replies)
Having searched high and low through Oracles documentation, I came to think that they're very scripting-averse, as there's (apparently) no list of possible return/exit codes for their various command line utilities.
Is anyone here in possession of such a list, or knows where to find one? It... (16 Replies)
Am trying to run this :
DECLARE
CURSOR c1
IS
SELECT customer_id, num3
FROM table1
WHERE text1 = 'pp' AND customer_id IS NOT NULL;
custcount INTEGER;
oldtext24 VARCHAR2 (80);
commit_counter INTEGER := 0;
BEGIN
FOR i IN c1
... (1 Reply)
Afternoon ladies and gents,
I am trying to create a simple script to remove a certain file from a user's network profile location. The removal works ok, but in the interest of overkill I would like to add a simple error detection (such as file doesn't exist or permission denied)
Currently, it... (2 Replies)
Hi Gurus,
I am new to this unix world...I need your help to walk through.
I want to learn shell scripting..... The shell script which can be able to use with oracle pl/sql...
So please suggest me which shell is good.
Which Unix/Linux version is good for this to Install to get practice the... (8 Replies)
Hi,
I have been using the SFTP commands in my reusable shell scripts to perform Get/Put operation. The script has a list of 6 errors which i am capturing through the log file using grep command.
But I feel there might me more errors which the script might need to capture. I tried to capture the... (2 Replies)
Discussion started by: Bobby_2000
2 Replies
LEARN ABOUT CENTOS
dblink_exec
DBLINK_EXEC(3) PostgreSQL 9.2.7 Documentation DBLINK_EXEC(3)NAME
dblink_exec - executes a command in a remote database
SYNOPSIS
dblink_exec(text connname, text sql [, bool fail_on_error]) returns text
dblink_exec(text connstr, text sql [, bool fail_on_error]) returns text
dblink_exec(text sql [, bool fail_on_error]) returns text
DESCRIPTION
dblink_exec executes a command (that is, any SQL statement that doesn't return rows) in a remote database.
When two text arguments are given, the first one is first looked up as a persistent connection's name; if found, the command is executed on
that connection. If not found, the first argument is treated as a connection info string as for dblink_connect, and the indicated
connection is made just for the duration of this command.
ARGUMENTS
conname
Name of the connection to use; omit this parameter to use the unnamed connection.
connstr
A connection info string, as previously described for dblink_connect.
sql
The SQL command that you wish to execute in the remote database, for example insert into foo values(0,'a','{"a0","b0","c0"}').
fail_on_error
If true (the default when omitted) then an error thrown on the remote side of the connection causes an error to also be thrown locally.
If false, the remote error is locally reported as a NOTICE, and the function's return value is set to ERROR.
RETURN VALUE
Returns status, either the command's status string or ERROR.
EXAMPLES
SELECT dblink_connect('dbname=dblink_test_standby');
dblink_connect
----------------
OK
(1 row)
SELECT dblink_exec('insert into foo values(21,''z'',''{"a0","b0","c0"}'');');
dblink_exec
-----------------
INSERT 943366 1
(1 row)
SELECT dblink_connect('myconn', 'dbname=regression');
dblink_connect
----------------
OK
(1 row)
SELECT dblink_exec('myconn', 'insert into foo values(21,''z'',''{"a0","b0","c0"}'');');
dblink_exec
------------------
INSERT 6432584 1
(1 row)
SELECT dblink_exec('myconn', 'insert into pg_class values (''foo'')',false);
NOTICE: sql error
DETAIL: ERROR: null value in column "relnamespace" violates not-null constraint
dblink_exec
-------------
ERROR
(1 row)
PostgreSQL 9.2.7 2014-02-17 DBLINK_EXEC(3)