Connecting once using sqlplus and doing multiple queries


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Connecting once using sqlplus and doing multiple queries
# 1  
Old 08-15-2010
Data Connecting once using sqlplus and doing multiple queries

Hello everyone,

It's my first week using unix and shell scripting. I tried creating a script that has a function that execute SQL query. my script looks something like this:

----------------------------------------------------

Code:
#!/bin/sh
 
tableName="myTable"
secondTable="secondTable"
 
myFunction()
{
myQuery=`sqlplus -s usr/pass << EOF
set heading off
SELECT COUNT(*) FROM $tableName WHERE <condition>;
EOF`
if [ $myQuery = '0' ]; then
myQuery=`sqlplus -s usr/pass << EOF
set heading off
SELECT COUNT(*) FROM $secondTable WHERE <condition>;
EOF`
fi
return $myQuery
}
 
myFunction
output=`echo $?`

----------------------------------------------------

Correct me if I'm wrong, but I believe that if I always use the "sqlplus -s usr/pass" statement everytime I need a record query, It would slow down my processing.. I have to call this function about 5000 times (need to query 5000 times to check record).

how can I execute multiple queries (select) without being redundant on the ''sqlplus -s....'' statement?

Please help me. Thank you.

Last edited by pludi; 08-15-2010 at 08:54 AM.. Reason: code tags, please...
# 2  
Old 08-15-2010
If you need to do that 5000 times, you should use PL/SQL. Otherwise if you are using ksh or bash 4, you can use one sqlplus as a co-process.
# 3  
Old 08-16-2010
Hi Sir,

Can you help me on how to convert it to PL/SQL? I'm running this script on sh (bourne shell).

I have no idea on how to process multiple queries using PL/SQL.

Thank you Sir.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Sqlplus not connecting the 2nd time in for loop

Hi, I am trying to get the rows(First step is to get the poolid's and then second step run a loop to get the output based on each pool id and third connection is to get the member id and pool id based on a different condition) where based of certain conditions and storing it in a file. I wrote the... (6 Replies)
Discussion started by: ajayakunuri
6 Replies

2. Shell Programming and Scripting

Connecting sqlplus from UNIX with multiple select statement

hi, i have a requirement where i need to connect sqlplus from unix and i am able to do so by following command: cust_count=`sqlplus -s $ORACLE_USER/$ORACLE_PASS@$ORACLE_SID << EOF set pagesize 0 set feedback off set verify off ... (1 Reply)
Discussion started by: lovelysethii
1 Replies

3. Red Hat

TNS Timeout Error when connecting to SQLPLUS through scripts only

Hi, I am facing a strange issue when connecting to SQLPLUS via a shell scripts. I am using Linux 2.6.18-274.18.1 and gbash shell. When I connect to SQLPLUS through scripts then it throws TNS Time Out error ""sometimes"" and connects successfully other times.This is only happening when... (9 Replies)
Discussion started by: aashish.sharma8
9 Replies

4. UNIX for Dummies Questions & Answers

multiple queries in single sqlplus

I need to connect a databas eusing sqlplus and i need to store the results of each query in separate file. is it possible to achieve this usng single sqlplus? i dont want to connect each time for each query. thanks (3 Replies)
Discussion started by: pandeesh
3 Replies

5. Shell Programming and Scripting

Connecting to Oracle DB using sqlplus

Hi, I am very new to shell scripting and trying to write a simple shell script in which i am trying to achieve the following: 1. Connect to oracle database hosted on a different server 2. fire a query on the oracle db 3. store the output in a variable 4. use this variable for further logic... (26 Replies)
Discussion started by: shrutihardas
26 Replies

6. UNIX for Dummies Questions & Answers

Connecting to Oracle DB using sqlplus

Hi, I am very new to shell scripting and trying to write a simple shell script in which i am trying to achieve the following: 1. Connect to oracle database hosted on a different server 2. fire a query on the oracle db 3. store the output in a variable 4. use this variable for further logic... (1 Reply)
Discussion started by: shrutihardas
1 Replies

7. Shell Programming and Scripting

connecting through sqlplus

I am trying to connect to one of the oracle sever using uni through sqlplus command: sqlplus -s BOXI_ALPH_AUDITOR,Q078_audit$@Q047 But its not getting connected. I tried using some different server using same syntax its working. What differene i found is the password is having no special... (2 Replies)
Discussion started by: gander_ss
2 Replies

8. Shell Programming and Scripting

Multiple MySql queries in shell script?

Hi guys, i know how to run a single query using mysql embedded in a shell script as follows: `mysql -umyuser -pmypass --host myhost database<<SQL ${query}; quit SQL` However, how would i be able to run several queries within the same connection? The reason for this is i am creating... (3 Replies)
Discussion started by: muay_tb
3 Replies

9. Shell Programming and Scripting

Showing errors when connecting to sqlplus in shell script

hi, I am trying to automate the compilation of procedures stored in .sql files in Unix. Is there any way in which we can sho err if there errors are raised in the compilation? I am using the following code to connect to the sqlplus sqlplus ${SQL_USER}/${SQL_PASSWORD} (5 Replies)
Discussion started by: silas.john
5 Replies

10. UNIX for Dummies Questions & Answers

error connecting to sqlplus

Hi, I wrote a shell script to call oracle procedure. But when i am trying to connet sqlplus with the fallowing statement It is giving me error " callproce.sh : sqlplus: not found". What could be the problem. sqlplus -s $CONNECT_STRING >$LOGFILE <<!! thank u all papachi (2 Replies)
Discussion started by: papachi
2 Replies
Login or Register to Ask a Question