smi_load.bat 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. @echo off
  2. REM Allow opening of each database in it's locale
  3. set DBNLS=2
  4. REM Access system databases in English
  5. set DB_LOCALE=en_us.8859-1
  6. set CLIENT_LOCALE=en_us.8859-1
  7. set OUTFILE=%INFORMIXDIR%\etc\buildsmi.out
  8. set SYSEXTSPSQLFILE=%INFORMIXDIR%\etc\tempsysextsp.sql
  9. set SYSAUDITOUTFILE=%INFORMIXDIR%\etc\tempsysaudit.out
  10. set COLCOUNT=0
  11. cd %INFORMIXDIR%\etc
  12. if errorlevel 1 goto BADDIR
  13. IF EXIST %SYSAUDITOUTFILE% (
  14. FOR /f "delims== " %%i IN ('type %SYSAUDITOUTFILE%') do set COLCOUNT=%%i
  15. del %SYSAUDITOUTFILE%
  16. ) ELSE set COLCOUNT=0
  17. IF %COLCOUNT% == 18 (
  18. %INFORMIXDIR%\bin\dbaccess sysmaster - < %INFORMIXDIR%\etc\smi_load.in2 >> %OUTFILE% 2>&1
  19. ) ELSE (
  20. %INFORMIXDIR%\bin\dbaccess sysmaster - < %INFORMIXDIR%\etc\smi_load.in1 >> %OUTFILE% 2>&1
  21. )
  22. IF NOT EXIST %INFORMIXDIR%\etc\sysextspaces.unl goto CHECKFAILURE
  23. echo load from '%INFORMIXDIR%\etc\sysextspaces.unl' insert into sysextspaces;> %SYSEXTSPSQLFILE%
  24. dbaccess -e sysmaster - < %SYSEXTSPSQLFILE% > %OUTFILE% 2>&1
  25. del /F %SYSEXTSPSQLFILE%
  26. :CHECKFAILURE
  27. findstr /I "error" %OUTFILE%
  28. if errorlevel 1 goto LOASUCC
  29. echo "The reload of sysmaster failed." >> %OUTFILE%
  30. echo "See %INFORMIXDIR%\etc\buildsmi.out for more information." >> %OUTFILE%
  31. goto DONE
  32. :BADDIR
  33. echo error: Could not chdir to %INFORMIXDIR%\etc >> %OUTFILE%
  34. goto DONE
  35. :LOASUCC
  36. echo The load of sysmaster was successful.
  37. :DONE