This isn't impossible - I can do it if I consult my notes - but it has enough steps where something might go wrong that it's a pretty high friction process for newcomers.
This isn't impossible - I can do it if I consult my notes - but it has enough steps where something might go wrong that it's a pretty high friction process for newcomers.
CREATE ROLE dumbo WITH LOGIN PASSWORD 'fuck';
CREATE DATABASE dumbo OWNER dumbo;
It's that easy.
That's like complaining you need to break eggs when you want to make an omelette.
I have a friend who we discovered didn't like cooking eggs because picking the shells out of the bowl was tedious. Turns out he was never taught how to crack an egg so he would just throw it in the bowl and have bits of shell everywhere. Point is that breaking eggs may not be so easy for everyone. (Of course, after describing to him how eggs are properly cracked, he was excited to try it out.)
But - why are the steps needed to create a database and setup credentials such a complex, manual process anyway? Why can't all those steps just be automated by a helper script that ships with postgres?
I reach for sqlite whenever I introduce SQL to people because its so much easier to get started with sqlite.
sqlite> .mode table
sqlite> select * from example;
+-----+----------+
| id | foo |
+-----+----------+
| 123 | afsd |
+-----+----------+
SQLite also has CSV, JSON, HTML and markdown modes - which is pretty neat!