public static void CreateDatabase(out MycoKeyCreator.Library.Database.IDatabase iDatabase, string host, int port, bool useWindowsAuthentication, string userName, string password, string dbName) { // Connect to the master DB to create the requested database OpenDatabase(out PetaPoco.NetCore.Database database, host, port, useWindowsAuthentication, userName, password, "postgres"); SqlQueryBuilders.ISqlQueryBuilder iSqlQueryBuilder = new SqlQueryBuilders.PostgreSQLQueryBuilder(); database.Execute(iSqlQueryBuilder.CreateDatabase(null, dbName)); database.CloseSharedConnection(); // Connect to the new database OpenDatabase(out database, host, port, useWindowsAuthentication, userName, password, dbName); iDatabase = new DatabaseWrapper(database); iDatabase.ISqlQueryBuilder = iSqlQueryBuilder; // Create each table iDatabase.CreateTables(); }