Oavsett vilka verktyg och programmeringsspråk som används är tillvägagångssättet du vill använda för detta densamma:
-
I ditt program, anslut till
template1
under uppstart ellerpostgres
databaser som alltid är tillgängliga i en PostgreSQL-installation och utfärdar enSELECT 1 FROM pg_database WHERE datname = ?
och skicka det önskade databasnamnet som den första parametern. -
Kontrollera resultatuppsättningen som returneras. Om en rad returneras finns databasen, du är klar, ingen ytterligare åtgärd krävs. Om ingen rad returneras existerar inte databasen och du måste skapa den, så:
-
Utfärda en
CREATE DATABASE mydatabasename;
med önskade alternativ somOWNER
,ENCODING
, etc enligt manualen för att skapa databasen själv. Den nya databasen kommer att vara tom. -
Fyll i databasen antingen genom att ansluta till den nya databasen i din applikation och skicka en sekvens av SQL-kommandon direkt från din applikation, eller genom att anropa
psql
kommando på skalet för att läsa ensql
skriptfil och skicka den till databasen. Jag föredrar i allmänhet att köra SQL direkt i min applikation.
Om du istället vill skapa databasen under installationen är det mest upp till dig och din installatör, men det kommer vanligtvis att vara så enkelt som en CREATE DATABASE
ring efter att PostgreSQL har startat och matar sedan psql
ett manus.