How to create a new database in PostgreSQL 10 in Windows from batch file? I am creating a batch file to create a new database in PostgreSQL 10. I used the following code,

echo off
cd "C:\Program Files (x86)\PostgreSQL\10\bin"
psql "dbname=myDB host=localhost user=postgres password=postgres port=5432"
pause


But I get this error,


  psql: FATAL:  database "myDB" does not exist


I understand this is not the command to create a new database. I also tried the following code,

echo off
cd "C:\Program Files (x86)\PostgreSQL\10\bin"
psql "createdb myDB passfile %APPDATA%\postgresql\pgpass.conf"
pause


This is based on the information in this link. The "pgpass.conf" file has the follwoing text,


  localhost:5432:myDB:postgres:postgres


But it asks to enter password. I entered the default password "postgres". But this was the output,


  psql: FATAL:  password authentication failed for user "User1"


The objective here is to create new database from the batch file without asking for password. How to achieve this?
Create a bat file with the following content and execute it:

c:\path\to\postgresql\bin\psql.exe -f C:\path\to\db_create.sql  postgresql://user:password@localhost:port/postgres


This is what worked for me.