我想寫一個批處理腳本來運行數據庫上的sql文件。 我希望腳本將sql查詢執行的結果放入一個日誌文件(使用類似>> SQl_LOGS.txt)。該工作正常,但我想獲得用戶輸入,如果 他/她想繼續執行下一個SQ1查詢與否。重定向輸出到日誌文件,並接受用戶輸入在同一批處理腳本
一切,甚至是暫停重定向到日誌文件,因此我不能在控制檯上提供任何輸入。
被稱爲內部for循環子程序:
:ProcessQuery
(
echo WHENEVER SQLERROR EXIT 1
echo WHENEVER OSERROR EXIT 1
echo @%query% XXuser // This should be sent top a log file
) | sqlplus XXuser/[email protected](DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=XX.XX.XX.XX)(Port=XXXX))(CONNECT_DATA=(SID=XXXX)))
echo error level is : %ERRORLEVEL%
IF %ERRORLEVEL% == 1 (
ECHO WARNING : QUERY %query% EXECUTION ERROR ! // these 3 lines should come up in the
// console
echo PLEASE FIX THE ERROR AND THEN HIT ENTER.
pause
) ELSE (
echo %str% %query%
ECHO INFO : QUERY %query% EXECUTION SUCCESSFUL !
)
能否批處理腳本輸出相同的日誌文件,也從控制檯獲取用戶輸入? 有沒有辦法實現這一目標?
是整個子程序重定向到日誌嗎?如果是的話,使用'回聲這到控制檯> con:' – Stephan
這很好!非常感謝你!! 1我爲此感謝了5天:) – DntFrgtDSemiCln