Není to kvůli implementaci ovladače, je to samotný PostgreSQL. Je to stejné s jakýmkoli jiným jazykem nebo ovladačem.
Klient musí být připojen k databázi, aby mohl provádět cokoli, včetně CREATE DATABASE
. Kromě postgres
databáze, template1
se často používá i pro tento účel.
Potom, protože se musíte připojit k čerstvě vytvořené databázi, abyste v ní vytvořili objekty, neexistuje způsob, jak se vyhnout otevření dalšího připojení.
Zkrátka to, co děláte, nelze zjednodušit, je to již optimální.