REM --------------------------------------------------
REM DB接続パラメータ
REM --------------------------------------------------
set PGPATH="C:\Program Files\PostgreSQL\10\bin\"
set HOSTNAME=localhost
set PORTNUM=5432
set DBNAME=database
set USERNAME=postgres
set PGPASSWORD=postgres
REM --------------------------------------------------
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "ここに実行したいSQL文を入れる!!"
pause
データ数のカウントをしたい場合は
データ数をカウントしたい場合には、「”SELECT COUNT(*) from スキーマ名.テーブル名;”」で記載します。 以下のようになります。
REM --------------------------------------------------
REM DB接続パラメータ
REM --------------------------------------------------
set PGPATH="C:\Program Files\PostgreSQL\10\bin\"
set HOSTNAME=localhost
set PORTNUM=5432
set DBNAME=database
set USERNAME=postgres
set PGPASSWORD=postgres
REM --------------------------------------------------
REM ########## データ数カウント ##########
ECHO "「scm01」スキーマの「logdata」「userdata」「adddata」テーブル数をカウントします。"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "SELECT COUNT(*) from scm01.logdata;"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "SELECT COUNT(*) from scm01.userdata;"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "SELECT COUNT(*) from scm01.adddata;"
pause
CSVデータで出力をしたい場合は
CSVデータを出力したい場合には、「”COPY (select * from スキーマ名.テーブル名) TO STDOUT WITH CSV …..」で記載します。以下のようになります。
REM --------------------------------------------------
REM DB接続パラメータ
REM --------------------------------------------------
set PGPATH="C:\Program Files\PostgreSQL\10\bin\"
set HOSTNAME=localhost
set PORTNUM=5432
set DBNAME=database
set USERNAME=postgres
set PGPASSWORD=postgres
REM --------------------------------------------------
REM ########## CSV出力 ##########
ECHO "「scm01」スキーマの「logdata」「userdata」「adddata」テーブルをCSVデータで出力します。"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "COPY (select * from scm01.logdata) TO STDOUT WITH CSV DELIMITER E'\t' FORCE QUOTE * NULL AS '' HEADER;" > "C:\Users\user01\Desktop\%date:~0,4%%date:~5,2%%date:~8,2%_logdata.csv"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "COPY (select * from scm01.userdata) TO STDOUT WITH CSV DELIMITER E'\t' FORCE QUOTE * NULL AS '' HEADER;" > "C:\Users\user01\Desktop\%date:~0,4%%date:~5,2%%date:~8,2%_userdata.csv"
%PGPATH%psql -h %HOSTNAME% -p %PORTNUM% -d %DBNAME% -U %USERNAME% -c "COPY (select * from scm01.adddata) TO STDOUT WITH CSV DELIMITER E'\t' FORCE QUOTE * NULL AS '' HEADER;" > "C:\Users\user01\Desktop\%date:~0,4%%date:~5,2%%date:~8,2%_adddata.csv"
pause