sql >> Database teknologi >  >> RDS >> Oracle

Konfig SQL*Plus for ikke at returnere andet end data

Der er et par forskellige tilgange i denne askTom-tråd på returnerer værdier fra SQL*Plus til et shell-script .

En almindelig tilgang er at vælge et konstant token ud over den værdi, du vil returnere (i Toms eksempel, det er strengen "KEEP") og derefter bruge sed (eller din foretrukne kommandolinjeparser) til at udtrække de data, du er faktisk interesseret i

#!/bin/ksh

x=`sqlplus / <<endl | grep KEEP | sed 's/KEEP//;s/[   ]//g'
select 'KEEP' , max(sal) from emp;
exit
endl`

echo the answer is $x

Andre tilgange, såsom tilgange, der giver dig mulighed for at læs flere outputlinjer diskuteres også i den tråd.

Hvis du ikke ønsker, at overskriften skal udskrives, skal du angive

set head off

i dit SQL*Plus script-- Jeg er ikke sikker på, hvorfor du udtrykkeligt sætter headeren til i scriptet, hvis du ikke vil have headeren... Vil du beholde en del af headeren?



  1. Algoritme til at vælge de mest populære steder fra databasen

  2. MySQL-syntaks ved oprettelse af fremmednøgle

  3. Indlejrede markører i PL/SQL

  4. Python - mysqlDB, sqlite resultat som ordbog