The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Forskjellen i ringer shell scripts arpit_narula Sun Solaris 6 09-07-2008 04:46
Issue ringer skript via cron. vskr72 Shell programmering og Skripting 5 01-07-2008 08:12
Ringekonto SQL ldr og SQL pluss skript i et shell-script rajagavini Shell programmering og Skripting 5 11-05-2007 06:12
Ringe funksjoner i skript direkte LiquidChild Shell programmering og Skripting 12 04-27-2007 07:28
Ringekonto SQL scripts gjennom Shell Script madhunk Shell programmering og Skripting 18 06-14-2006 01:35

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 11-21-2007
manas_ranjan's Avatar
manas_ranjan manas_ranjan is offline
Registrert bruker
  
 

Bli Dato: juli 2007
Sted: Amsterdam
Innlegg: 177
noen mulig løsning på sql ringer scripts

Hei alle,

jeg har en funksjon som tar i / p som en ddl sctipt som i / p og utføre den,
la
HTML Code:
function execute_sql
{
db_var="$1"
v_cnt=`sqlplus -s XXXXX/XXXXX@aXXX << ENDSQL | sed -e "s/Connected\.//" -e "/^$/d"
set pagesize 0 feedback off verify off heading off echo off  serveroutput on size 10000
whenever sqlerror exit SQL.SQLCODE;
$db_var
commit;
exit ;
ENDSQL`
db_var=""
}
hvis jeg er gjennomføring av en feil ddl script, så jeg er ikke i stand til å fange retrun koden som 1 stedet for det kaster meg 0 om jeg kjøre den ddl gjennom manuset funksjonen.

la min ddl som er galt, er
INSERT INTO CBF_CONFIG (CS_ID, CS_NAME, FIELD_SEP, REC_SEP, FIELDS_NUM, FTPS_FILE, DECSN_FMT_TYPE, DECSN_FIELDS, DECSN_SCHDL_TYPE, DECSN_SCHDL, DECSN_TIME, DECSN_UNITWS, UNIQ_FILE_CONVNS, OUTBOX_RETN, UPDATE_TIME) VALUES
( 'MANASMANAS1', 'SCORENETHERLANDS','|',' NULL', '15 ',' N ',' standard ',' NULL ',' DAGLIG ',' NULL ', '14: 00', 'N' , 'Y', '1 ', SYSDATE);
O / P blir som følger hvis jeg kjøre det gjennom enkle sqlplus miljø,
( 'MANASMANAS1', 'SCORENETHERLANDS','|',' NULL', '15 ',' N ',' standard ',' NULL ',' DAGLIG ',' NULL ', '14: 00', 'N' , 'Y', '1 ', SYSDATE)
*
Feil på linje 2:
ORA-12899: value for stort for kolonnen "XXXXX". "CBF_CONFIG". "CS_ID"
(faktisk: 11, maksimum: 10)

men hvis jeg skal kalle det gjennom over skallet funksjoner,
HTML Code:
insert_sql="INSERT INTO CBF_CONFIG ( CS_ID, CS_NAME, FIELD_SEP, REC_SEP, FIELDS_NUM, FTPS_FILE, DECSN_FMT_TYPE, DECSN_FIELDS, DECSN_SCHDL_TYPE, DECSN_SCHDL, DECSN_TIME, DECSN_UNITWS, UNIQ_FILE_CONVNS, OUTBOX_RETN, UPDATE_TIME ) VALUES
('MANASMANAS1','SCORENETHERLANDS','|','NULL','15','N','STANDARD','NULL','DAILY','NULL','14:00','N','Y','1',SYSDATE) ; "
echo $insert_sql

execute_sql "$insert_sql"
rc=$?
echo "exit code $rc"
Deretter RC er 0, men v_cnt er "FEIL på linje 2:
ORA-12899: value for stort for kolonnen "CLIFBACONFIG". "CBF_CONFIG". "CS_ID"
(faktisk: 11, maksimum: 10) "

mitt spørsmål er hvorfor jeg er ikke i stand til å fange SQL.SQLCODE selv om i funksjonen er det en linje når sqlerror exit SQL.SQLCODE...
noen forslag for å forbedre feilen fangst økten ...........

Sist endret av manas_ranjan; 11-22-2007 kl 05:06.. Reason: fjerne login / pwd @ dbname
  #2 (permalink)  
Old 11-21-2007
Cameron's Avatar
Cameron Cameron is offline Forum Advisor  
Registrert bruker
  
 

Bli Dato: november 2001
Sted: Brisbane, Australia
Innlegg: 500
Det er svært sannsynlig at du ikke søke på forumet etter "sqlplus'.

Mens dette kanskje ikke svare på alle spørsmålene dine, kan det sette deg på riktig vei.

Slik kontrollerer sqlplus kommandoen er vellykket eller ikke i HP-UX?

Prøver å utføre SQL i måten du har vist er virkelig vanskelig å håndtere over tid.

I fremtiden benytte deg av søkefunksjonen i disse fora.
Du spørsmålene er mer enn sannsynlig å ha blitt spurt før i det siste.

Skål,
Cameron
  #3 (permalink)  
Old 11-22-2007
manas_ranjan's Avatar
manas_ranjan manas_ranjan is offline
Registrert bruker
  
 

Bli Dato: juli 2007
Sted: Amsterdam
Innlegg: 177
Wink

thankx Cameron.

Jeg har gått gjennom alle søk ... men ikke referert noen ...... som noen av dem ikke er oppfylt mine behov
siden jeg legge det ut med forvirrende utsagn ... beklager for det.

egentlig jeg skulle spørre, selv om når sqlerror exit SQL.SQLCODE er det derfor jeg er ikke i stand til å fange det SQL.SQLCODE etter kjøre funksjonen?? hvorfor rc viser 0 som vi alle vet er jeg kjøre galt DDL (s), hvorfor ikke SQL.SQLCODE som rc ????? Jeg vil være takknemlig hvis du kan forklare meg ....

MERK: Jeg har ikke brukt noen spole fil, o / p logging fil .. stedet jeg sjekket FEIL / ut ved å sende o / p å v_cnt som følger,

HTML Code:
if [ `echo "$v_cnt" | grep "ORA-" | wc -l` -ne 0 ]
then
echo "`basename $0` wrong execution possible reason is :-`echo "$v_cnt" | grep "ORA-" | awk -F":" '{print $2}'`"
exit 1
fi
atter beklager misvisende / forvirrende utsagn ...... neste gang jeg vil prøve å ta seg av dette.

Sist endret av manas_ranjan; 11-22-2007 kl 05:08..
  #4 (permalink)  
Old 11-22-2007
ranj @ chn ranj@chn is offline Forum Advisor  
Spille med Ubuntu Now!
  
 

Bli Dato: Oct 2005
Beliggenhet: Chennai
Innlegg: 365
problem med sed

Problemet er med sed. Det går fint og dvs hvorfor returkoden er null. Fjern sed og sjekke resultatene.
  #5 (permalink)  
Old 11-22-2007
manas_ranjan's Avatar
manas_ranjan manas_ranjan is offline
Registrert bruker
  
 

Bli Dato: juli 2007
Sted: Amsterdam
Innlegg: 177
Thumbs up

du har helt rett ...... etter fjerning sed ... jeg fikk det eksakte svaret som forventet.

tusen takk .... ranj ......
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 01:52.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0