前提・実現したいこと
①:BATもしくはPowerShellをWindwosのタスクスケジューラに登録。登録したタスクで②~④を実行。
②:sqlplus文にてDB接続後、単純なselect文を実行(select top 1 * ~のような感じで1行のみ結果が出力されるような形)→結果はYYYYMMDD日付が出る。
③:出力した結果から前日日付と比較し前日日付以前(前日日付ではない)であれば「〇」をcsvに出力し
最終的にはsyslogに吐き出す。
④別のクエリ文で結果がNULLであった場合は「〇」をcsvに出力しsyslogに吐き出す。
上記の作業を自動化したいのですが可能でしょうか?
可能であれば構文をご教授頂けると幸いです。
不足している情報があるのであればご指摘ください。
宜しくお願い致します。
試しに実行してみた内容です。
BAT********
echo off
CD %~dp0
sqlplus ユーザ名/パスワード@接続文字列 @test.sql
BAT********
test.sql***
set echo off
set linesize 10000
set trimspool on
set feedback off
set colsep ','
spool C:\Users\Administrator\Desktop\0824確認分\test.csv
SELECT * FROM
(SELECT * FROM テーブル名
WHERE プラン番号 = 'PN00130030' and ファイルID = '3902'
ORDER BY 受信年月日 DESC)
WHERE ROWNUM <=1
ORDER BY 受信年月日 DESC;
spool off
quit
test.sql***
回答1件
あなたの回答
tips
プレビュー