@echo off
setlocal

rem ##################################################################
rem     ISDB作成スクリプト
rem         CreateISDB.bat
rem                                                     2022/08/30 
rem 
rem Postgresの設定
rem  (ご使用の環境に合わせて変更して下さい)
rem  PG_HOME        :PostgreSQLインストールパス
rem  DP_HOST        :PostgreSQLインストールホスト名(IP)
rem  DP_PORT        :PostgreSQL使用ポート
rem  DP_USER        :PostgreSQL管理者USER
rem  DP_DB_NAME     :PostgreSQLデータベース名
rem  DP_ISDBOWNER   :ISDB OWNER ユーザー名
rem ##################################################################
set PG_HOME="C:/Program Files/PostgreSQL/14"
set DP_HOST=localhost
set DP_PORT=5432
set DP_USER=postgres
set DP_DB_NAME=ISDB
set DP_ISDBOWNER=ilpuser

cls
echo ###############################
echo # Create database ISDB.
echo ###############################

echo.
echo PostgreSQL Home : %PG_HOME%
echo Hostname        : %DP_HOST%
echo Port number     : %DP_PORT%
echo User name       : %DP_USER%
echo Database name   : %DP_DB_NAME%
echo ISDB Owner name : %DP_ISDBOWNER%

echo.
echo Create database ISDB with this parameters.
@pause

set DP_ALTER=ALTER DATABASE \"%DP_DB_NAME%\" SET TimeZone='UTC';ALTER DATABASE \"%DP_DB_NAME%\" SET lo_compat_privileges='on';ALTER DATABASE \"%DP_DB_NAME%\" SET lc_messages='C';ALTER DATABASE \"%DP_DB_NAME%\" SET standard_conforming_strings='off';ALTER DATABASE \"%DP_DB_NAME%\" OWNER TO %DP_ISDBOWNER%;

echo.
echo # Creating ISDB.
%PG_HOME%\bin\createdb.exe --host %DP_HOST% --port %DP_PORT% --username %DP_USER% %DP_DB_NAME% > %TEMP%\create-isdb.log 2>&1

if not x%ERRORLEVEL%==x0 (
	echo.
	echo Failed to createdb.
	goto DP_ERROR
)

echo.
echo # Setting database parameters.
%PG_HOME%\bin\psql.exe --host %DP_HOST% --port %DP_PORT% --username %DP_USER% -c "%DP_ALTER%" %DP_DB_NAME% > %TEMP%\create-isdb.log 2>&1
echo.
if not x%ERRORLEVEL%==x0 (
	echo.
	echo Failed to alter database.
	goto DP_ERROR
)

echo.
echo Create ISDB successful.
echo.
exit /b

:DP_ERROR

echo.
echo  See %TEMP%\create-isdb.log
echo.

@pause
