08-25-2007
Quote:
Originally Posted by
maco_home
i'm having real problems retrieving the returncode of my sqlplus-call. I found a lot of informations on the net, but havn't been able to get it running so far, so now i ask for some help
I do start the sqlplus out of my shell script with the parameters stored in the proc_clips.sql, which is perfectly working. But now i have created some real obviously mistakes like "trunate" or "comit" - but I still get the 0 as returncode. Does anybody have an idea what i'm doing wrong???
Thanks for your help, Martin
###### dbUpdate.sh ######
sqlplus -s userrob@db1/passwrob< proc_clips.sql
RETVAL=$?
echo $RETVAL
echo "SQLPUS-CLIPS"
###### proc_clips.sql ######
set echo on
whenever sqlerror exit 1
whenever oserror exit 2
exec martin_s4m_fictions;
exec MAJ_RANK;
trunate table T_DRAUT_TEMP_CLIPSFICTIONS;
comit;
exit 0
###### OUTPUT ######
SP2-0734: unknown command beginning "trunate ta..." - rest of line ignored.
SP2-0042: unknown command "comit" - rest of line ignored.
0
SQLPUS-CLIPS
It's because those are SQL*Plus errors and not SQL ,PL/SQL blocks (SQLERROR) or OS (OSERROR) errors.
Last edited by radoulov; 08-25-2007 at 01:08 PM..
Reason: corrected(problem description not clear): commands->errors
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi ,
I want to pass parameters from a shell script to a sql script and use the parameter in the sql query ..and then I want to spool a particular select query on to my unix box... for 4 different locations by writing only one sql script
Right now no file is generated on the unix box...it is a... (2 Replies)
Discussion started by: phani
2 Replies
2. Shell Programming and Scripting
I have a script which connects to different database servers using sqlplus. Is there a way by which I can run a shell command on that host from sqlplus?
I know about 'host' command but it runs script on the local machine where the original script is running. Is there a way to run command on the... (9 Replies)
Discussion started by: dkr123
9 Replies
3. Shell Programming and Scripting
Can anybody help me out in sending parameters from sql*plus script to unix shell script without using flat files..
Initially in a shell script i will call sql*plus and after getting some value from some tables, i want that variable value in unix shell script. How can i do this?
Please tell me... (2 Replies)
Discussion started by: Hara
2 Replies
4. Shell Programming and Scripting
Hi,
I am writing a script to test database connection. If the first try fails, it will wait for 1 minutes and then try again. The script is as following:
........
for i in $ORACLE_SID
do
$ORACLE_HOME/bin/sqlplus $username/$password@$i <<! >/dev/null
select * from tab;
exit
if ; then... (3 Replies)
Discussion started by: beaniebear
3 Replies
5. Shell Programming and Scripting
Hi,
I need help urgently for following issue. Pls help me to resolve this issue.
I am calling sql script file(file1.sql) from UNIX Shell Script(script1.ksh) using sql plus and trying to create flat file that contains all records returned from SQL query in SQL script(file1.sql)
I given... (6 Replies)
Discussion started by: praka
6 Replies
6. Shell Programming and Scripting
Hi
I want to connect to the Oracle database using a username/password and get back the query result(a numeric value) in a variable, which I can then compare using a conditional.
Can anybody help me with this.
Thanks
Gaurav (4 Replies)
Discussion started by: gaurav_1711
4 Replies
7. Shell Programming and Scripting
Hi All,
How i will use sqlplus in shell script?
Can any one provide sample code which explain following:
1. Connect to oracle DB
2. Exceute select * from tablename
3. Release connection to the DB
4. Append output in file everytime when query executes.
Thanks in advance (1 Reply)
Discussion started by: poweroflinux
1 Replies
8. Shell Programming and Scripting
sql_rows=`sqlplus -s / <<EOF
set heading off
set pagesize 1000
set tab off
set linesize 120 wrap off
column "Path" format a15
--column "No_Of_files" format a10
select tablespace_name, substr(file_name,1,instr(file_name,'/',1,2)) as "Path" , count(*) as "No_Of_files" from dba_data_files
... (7 Replies)
Discussion started by: desibabu
7 Replies
9. Shell Programming and Scripting
Hi
When I use sqlplus in shell script, I get sqlplus: command not found.
ORACLE_HOME is not set. How to set ORACLE_HOME in unix?
Thanks (3 Replies)
Discussion started by: vinoth_kumar
3 Replies
10. Shell Programming and Scripting
Hi All,
Please let me know what i am missing in the following code (part of my script)
Schemas=(AWQM WFCONTROLLER PROVCO PRISM)
for s in "${Schemas}"
do
sch="${s}_$tol"
if || ;then
echo "This is AD or TD region"
sqlplus -s $sch/$tpwd@$ttns <<EOF... (7 Replies)
Discussion started by: pvmanikandan
7 Replies
LEARN ABOUT DEBIAN
oar-database
oar-database(1) OAR commands oar-database(1)
NAME
oar-database - create/initialize/upgrade/reset/drop the oar database
SYNOPSIS
oar-database --create [OPTIONS]
oar-database --drop [OPTIONS]
oar-database --setup [OPTIONS]
oar-database --reset [OPTIONS]
DESCRIPTION
Manage the oar database.
--setup
Initialize/Upgrade an existing database.
--reset
Reset an existing database.
--create
Create and initialize a new database/user.
--drop
Drop an existing database/user.
OPTIONS
General parameters
--conf=OAR_CONF_FILE
Define the oar configuration file to use. By default /etc/oar/oar.conf is used. This file doesn't exist, the default parameters for
each value are used.
--update-conf
The database parameters given in the command line are writen to the OAR_CONF_FILE
-h,--help
Display this help.
-d,--debug
Display more information during the script execution
-f,--force-sql
Force to resume the execution even if an sql instruction fails
-y,--force-yes
This option will cause oar-database to continue without prompting if it is doins something potentially harmful
Database admin parameters
These parameters are only needed for database/user creation or removing.
--db-is-local
For --create or --drop, this option tells that the database is local. oar-database can use local admin account to execute command
(useful for postgres).
--db-admin-user=DB_ADMIN_USER
For --create or --drop, this option gives the privilegied user to use.
--db-admin-pass=DB_ADMIN_PASS
For --create or --drop, this option gives the privilegied user pass to use.
SQL parameters
By default, if not specified, all the sql parameters are taken from the OAR_CONF_FILE. It is preferable to set these values directly to
this file.
--db-type=DB_TYPE
The type of the SQL database. It can be currently, mysql or Pg (for postgresql).
--db-user=DB_USER
Connect to the database as the user DB_USER instead of the one given in OAR_CONF_FILE. By default, if OAR_CONF_FILE doesn't specify a
user, it is oar.
--db-pass=DB_PASS
Connect to the database with the password DB_PASS instead of the one given in OAR_CONF_FILE.
--db-host=DB_HOST
Connect to the database on the host DB_HOST, By default, if OAR_CONF_FILE doesn't specify a host, it is localhost.
--db-port=DB_PORT
Connect to the database on the port DB_PORT, By default, if OAR_CONF_FILE doesn't specify a port, the value depend on the DB_TYPE. if
DB_TYPE is mysql, DB_PORT is 3306. If DB_TYPE is postgresql, DB_PORT is 5432.
--db-name=DB_NAME
Connect to the database on the host DB_HOST, By default, if OAR_CONF_FILE doesn't specify a database name, it is oar.
--db-ro-user=DB_RO_USER
same as --db-user except that it is for the read only access.
--db-ro-pass=DB_RO_PASS
same as --db-pass except that it is for the read only access.
EXAMPLES
Mysql
First you need to specify the sql parameters in /etc/oar/oar.conf. These parameters will be used by oar-database.
To create a new database (assuming that the sql root password is PASS):
oar-database --create --db-admin-user root --db-admin-pass PASS
To upgrade an existing database:
oar-database --setup
Postgresql
First you need to specify the sql parameters in /etc/oar/oar.conf. These parameters will be used by oar-database. Then if your postgresql
database is on the local system, you can use the option --db-is-local (otherwise, the procedure is the same as Mysql). So oar-database will
use the postgres unix user to administrate the database (you need privilegied access to the local system).
To create a new database:
oar-database --create --db-is-local
To upgrade an existing database:
oar-database --setup
Advanced usages
To make some tests or to administrate several databases, you can also specify the sql parameters on the command line. For example:
oar-database --create --db-type=Pg --db-host=HOST
--db-user=oar --db-pass=PASS
--db-admin-user=ADMIN_USER --db-admin-pass=ADMIN_PASS
will create the oar database and the oar user on the postgresql system hosted by HOST. The user ADMIN_USER must have the right to create
new databases and new roles on this system.
FILES
/usr/lib/oar/database/mysql_structure.sql, /usr/lib/oar/database/pg_structure.sql
SQL instructions for creating the structure of the oar database.
/usr/lib/oar/database/mysql_default_admission_rules.sql, /usr/lib/oar/database/pg_default_admission_rules.sql
SQL instructions for inserting the default admission rules in the oar database.
/usr/lib/oar/database/default_data.sql
SQL instructions for inserting the default data in the oar database.
/usr/lib/oar/database/mysql_reset_structure.sql, /usr/lib/oar/database/pg_reset_structure.sql
SQL instruction for emptying an existing oar database.
/usr/lib/oar/database/mysql_structure_upgrade_*.sql, /usr/lib/oar/database/pg_structure_upgrade_*.sql
SQL instructions for upgrading an existing database.
oar-database 2012-06-26 oar-database(1)