sql >> Databáze >  >> RDS >> Oracle

Jak používat sql*plus v příkazovém skriptu Windows k řízení toku?

Pravděpodobně bych napsal skript (nebo podmíněný, v závislosti na požadavcích) z nazvaného script.sql sám.

Například následující script.sql vytvoří soubor .bat windows_commands.bat :

set feedback off
set echo off
set trimspool on
set termout off
set serveroutput on size 100000 format wrapped
set lines 500
set pages 0

-- create the bat file to be executed later:
spool windows_commands.bat

declare
  c number;
begin

  select count(*) into c from dual;

  -- depending on a conditional, write the stuff to be executed into the
  -- bat file (windows_commands.bat)
  if c = 1 then
     dbms_output.put_line('@echo everthing ok with dual');
  else
     dbms_output.put_line('@echo something terribly wrong with dual');
  end if;

end;
/

spool off

exit

Poté můžete zavolat script.sql z dalšího souboru .bat takhle:

@rem create oracle session, call script.sql
sqlplus %user%/%password%@%db% @script.sql

@rem script.sql has created windows_commands.bat.
@rem call this newly created bat file:
call windows_commands.bat


  1. Kontrola časového překrývání tabulky?

  2. Vkládání dat velkých objektů do Salesforce.com ze serveru SQL

  3. Konfigurační parametr work_mem v PostgreSQL na Linuxu

  4. Jak Cosh() funguje v PostgreSQL