在我判断errorlevel的地方,为什么errorlevel的值永远是0,把sql文写错 errorlevel还是0
SET dbpasswd=password
::DB名
SET dbName=test
::sql文件名
SET sqlpath=%~dp0
set sqlfile=test.sql
::error文件名
set errorfile=error.log
::時間設定
set currenttime=%date:0,4%.%date:5,2%.%date:8,2%.%time:0,2%.%time:3,2%.%time:6,2%
cd C:\Program Files\MySQL\MySQL Server 8.0\bin
::mysql -h%dbhost% -u%dbuser% -p%dbpasswd% -D test < %sqlpath%%sqlfile% > %sqlpath%bin.txt
mysql -u%dbuser% -p%dbpasswd% -D test < %sqlpath%%sqlfile% > %sqlpath%bin.txt
sed -e"s/\s/,/g" %sqlpath%bin.txt > %sqlpath%bin.csv
::值为0成功、不为0失败
::実行の結果はerrorlevel.logファイルに保存
if %errorlevel% NEQ 0 (
echo "===sql文実行失敗==== " %currenttime% >> %sqlpath%%errorfile%
)
if %errorlevel% EQU 0 (
echo "成功" %currenttime% >> %sqlpath%%errorfile%
)
PAUSE
@ECHO Done!