08-25-2007
Quote:
Originally Posted by
radoulov
It's because those are errors with SQL*Plus commands and not SQL commands,PL/SQL blocks (SQLERROR) or OS (OSERROR) errors.
For this reason, I suggest you exiting with a good return status different from 0, and test this value for successful completion of the sql script.
Every exit status is good, only dont' use 0
Here at work we have a whole bunch of sql programs made in this way for avoiding this problem.
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
data::phrasebook::sql
Data::Phrasebook::SQL(3pm) User Contributed Perl Documentation Data::Phrasebook::SQL(3pm)
NAME
Data::Phrasebook::SQL - The SQL/DBI Phrasebook Model.
SYNOPSIS
use Data::Phrasebook;
use DBI;
my $dbh = DBI->connect(...);
my $book = Data::Phrasebook->new(
class => 'SQL',
dbh => $dbh,
file => 'queries.txt',
);
my $q = $book->query( 'find_author', {
author => "Lance Parkin"
});
while ( my $row = $q->fetchrow_hashref ) {
print "He wrote $row->{title}
";
}
$q->finish;
queries.txt:
find_author=select title,author from books where author = :author
DESCRIPTION
In order to make use of features like placeholders in DBI in conjunction with phrasebooks, it's helpful to have a phrasebook be somewhat
more aware of how DBI operates. Thus, you get "Data::Phrasebook::SQL".
"Data::Phrasebook::SQL" has knowledge of how DBI works and creates and executes your queries appropriately.
CONSTRUCTOR
new
Not to be accessed directly, but via the parent Data::Phrasebook, by specifying the class as SQL.
Additional arguments to those described in Data::Phrasebook::Generic are:
o "dbh" - a DBI database handle.
METHODS
dbh
Set, or get, the current DBI handle.
query
Constructs a Data::Phrasebook::SQL::Query object from a template. Takes at least one argument, this being the identifier for the query. The
identifier is used as a key into the phrasebook "file". A second argument can be provided, which is an optional hashref of key to value
mappings.
If phrasebook has a YAML source looking much like the following:
---
find_author:
sql: select class,title,author from books where author = :author
You could write:
my $q = $book->query( 'find_author' );
OR
my $q = $book->query( 'find_author', {
author => 'Lance Parkin'
} );
OR
my $author = 'Lance Parkin';
my $q = $book->query( 'find_author', {
author => $author,
} );
# sql = select class,title,author from books where author = ?
# args = 'Lance Parkin'
In the above examples, the parameters are bound to the SQL using the bind parameters functionality. This is more efficient in most cases
where the same SQL is reused with different values for fields.
However, not all SQL statements just need to bind parameters, some may require the ability to replace parameters, such as a field list.
---
find_author:
sql: select :fields from books where author = :author
my $q = $book->query( 'find_author',
replace => { fields => 'class,title,author' },
bind => { author => 'Lance Parkin' }
);
# sql = select class,title,author from books where author = ?
# args = 'Lance Parkin'
In all instances, if the SQL template requested does not exist or has no definition, then an error will be thrown.
Consult Data::Phrasebook::SQL::Query for what you can then do with your returned object.
For reference: the bind hashref argument, if it is given, is given to the query object's "order_args" and then "args" methods.
SEE ALSO
Data::Phrasebook, Data::Phrasebook::Generic, Data::Phrasebook::SQL::Query.
SUPPORT
Please see the README file.
AUTHOR
Original author: Iain Campbell Truskett (16.07.1979 - 29.12.2003)
Maintainer: Barbie <barbie@cpan.org> since January 2004.
for Miss Barbell Productions <http://www.missbarbell.co.uk>.
COPYRIGHT AND LICENSE
Copyright (C) 2003 Iain Truskett.
Copyright (C) 2004-2010 Barbie for Miss Barbell Productions.
This module is free software; you can redistribute it and/or
modify it under the Artistic Licence v2.
perl v5.10.1 2010-08-31 Data::Phrasebook::SQL(3pm)