Whichever approach is fine, the end result is that less effort is made to directly support PGSQL in the long run, and you'd get to support any database back-end as a result. I only mention ORM's cause some have decent tooling (EntityFramework (Core), Diesel.rs, etc) which can be useful for generating schemas out of object models. Also in some cases ORMs are using DB abstraction libraries like for example Entity Framework is built on top of ADO .NET.