sql >> Databasteknik >  >> RDS >> Oracle

Problem när användaren matar in data i sql-kommandot

Substitutionsvariabler är valfritt avslutade med en period för att skilja dem från alla tecken som följer. Om du vill använda en i strängen också, måste du lägga till den avslutningen uttryckligen:

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

För problemet med två extra rader, lägg till aktivera verifiering ; för tillfället är den inställd på on (som standard) så att den visar dig det gamla och nya värdet för alla substitutionsvariabler du använder.

Det enda sättet jag vet för att få in datumet i filnamnet är att först lägga in det i en ersättningsvariabel:

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 sats låter dig skapa en ersättningsvariabel, &y_run_dt i det här fallet, med ett värde från en frågad kolumn, x_run_dt . Slå in markeringen som genererar det värdet mellan set termout satser döljer den från den normala utdatan när den körs som ett skript.




  1. Använder du ett jokertecken i en uppdatering?

  2. Bilduppladdning CodeIgniter

  3. MySQL LAST_INSERT_ID() används med flera poster INSERT-sats

  4. mysql - Applicera en yttre koppling till en komplex sats