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

Problemer, når bruger indtaster data i sql-kommando

Substitutionsvariabler er valgfrit afsluttet med et punktum for at adskille dem fra eventuelle tegn, der følger. Hvis du også vil bruge en i strengen, skal du tilføje denne opsigelse eksplicit:

spool E:\abc\Test\File1_&MYPeriod..csv

For problemet med to ekstra linjer skal du tilføje set verify off ; i øjeblikket er den indstillet til on (som standard), så den viser dig den gamle og den nye værdi af alle substitutionsvariabler, du bruger.

Den eneste måde, jeg kender til at få datoen ind i filnavnet, er at sætte den ind i en substitutionsvariabel først:

set termout off
column x_run_dt new_value y_run_dt
select to_char(sysdate, 'YYYYMMDDHH24MISS') as x_run_dt from dual;
set termout on
spool E:\abc\Test\File1_&MYPeriod._&y_run_dt..csv

new_value klausul lader dig oprette en substitutionsvariabel, &y_run_dt i dette tilfælde med en værdi fra en søgt kolonne, x_run_dt . Indpakning af det udvalg, der genererer denne værdi, mellem set termout klausuler skjuler det fra det normale output, når det køres som et script.




  1. SQL Server mangler indeks

  2. Sekvens i Oracle/PostgreSQL uden ID i insert statement

  3. MySQL-forespørgsel med RAND() underforespørgselsbetingelse

  4. Oprettelse af en funktion i Postgresql, der ikke returnerer sammensatte værdier