rem @echo off
call _db_enviroment.bat

if "%1" == "drop" goto drop
if "%1" == "create" goto create
if "%1" == "extract" goto extract
if "%1" == "insert_data" goto insert_data
if "%1" == "recreate" goto recreate
goto ayuda

:recreate
call %0 drop
IF %ERRORLEVEL% == 1 GOTO ERROR
call %0 create
IF %ERRORLEVEL% == 1 GOTO ERROR
call %0 insert_data
IF %ERRORLEVEL% == 1 GOTO ERROR
goto end

:drop
echo Borrando la base de datos %DB_ALIAS%...
IF EXIST "%DB_DEBUG_PATH%\%DB_ALIAS%" DEL %DB_DEBUG_PATH%\%DB_ALIAS%
IF %ERRORLEVEL% == 1 GOTO ERROR
goto done

:create
echo Creando la base de datos %DB_ALIAS% en %DB_DEBUG_PATH%\%DB_ALIAS%
%ISQL% -i %DB_SQL_SCRIPT% %DB_LOGIN% -q
IF %ERRORLEVEL% == 1 GOTO ERROR
move %DB_ALIAS% "%DB_DEBUG_PATH%"
goto done

:extract
echo Extrayendo %DB_ALIAS% al script SQL %DB_SQL_SCRIPT%...
IF EXIST %DB_SQL_SCRIPT% DEL %DB_SQL_SCRIPT%
%ISQL% -a -d %DB_ALIAS% %DB_LOGIN% -o %DB_SQL_SCRIPT% %DB_DEBUG_PATH%\%DB_ALIAS% -b
IF %ERRORLEVEL% == 1 GOTO ERROR
goto done

:insert_data
echo Insertando datos del sistema en %DB_ALIAS%...
%ISQL% -i %DB_SQL_SYSDATA% %DB_LOGIN% %DB_DEBUG_PATH%\%DB_ALIAS% 
IF %ERRORLEVEL% == 1 GOTO ERROR
goto done

:error
ECHO Se ha producido un error!!!!
goto end

:ayuda
echo Modo de uso: %0 [create / drop / extract]
echo ------------
echo       create: crear la base de datos %DB_ALIAS% (la borra antes si ya existe)
echo         drop: borrar la base de datos %DB_ALIAS%
echo      extract: extrae los metadatos de la BD a un fichero SQL (%DB_SQL_SCRIPT%)
echo  insert_data: extrae los metadatos de la BD a un fichero SQL (%DB_SQL_SCRIPT%)
echo.
echo     recreate: rehacer la BD: borrarla si existe, crearla e insertar los datos del sistema
echo.
goto end

:done
echo Hecho!
echo.
goto end

:end
