will definitely be taking a look at this. i started my career on mostly SQL Server and using SSMS fits my brain like a glove. i've been so dissatisfied with the typical options (pgadmin, dbeaver, datagrip, etc) for managing/querying postgres since i started using it probably like 10 years ago. postgres itself is great (don't get it twisted either, SQL Server is fantastic. just costs money) but i never understood why there wasn't more uproar in the community about its DBMS tooling ecosystem
I've found Datagrip to be far and away the most impressive universal database tool. I feel like I've tried them all, and they all have a quality of having been developed by database people, rather than IDE designers. The depth of capability, extensibility, pace of improvement--I'm a very happy customer.
I don't want to poop on open source, but pgadmin and dbeaver and not even close to playing in the same league.
I used DBeaver (community edition) before Datagrip and I would have to give the nod to datagrip overall. I wouldn't have even tried it if I did not have the etbrains all product pack. DBeaver is great, don't get me wrong, but Datagrip just seems a lot more polished overall and the settings and the UI just seem more intuitive to me.
More streamlined UI. I find the graph viewer to display some things nicer, like coloring tables, bringing in related tables. Slightly better introspection and code formatting. Easier refactoring capabilities. Easier to get IdeaVim working then whatever Ecplise plugin is needed in DBeaver.
In my experience, DataGrip has been easier to get up and running out of the box and bringing the big IDE guns than DBeaver but DBeaver also does done this really well. For example I have never been able to setup DG with Access but DBeaver works pretty good out of the box with that garbage. Also it's free.
Many people love Datagrip because it's got the polish and style of Jetbrains' other products. Others hate it and much prefer the more classic designs of DBeaver or the browser UI of PGAdmin.
I think it's worth downloading the 30 day trial and giving it a quick whirl. The people who dislike it seem to get hesitant quite quickly, so I doubt you'd need more than a day to decide if it's for you or not. There are all kinds of cool and fancy plugins you can set up, but I wouldn't bother with that if you decide the UX just isn't for you.
It supports quite literally every database I've thrown at it, which is pretty nice.
The way it support projects is also rather useful to me as a developer. Most SQL tools seem to be focused on being an interface first and maybe having a few SQL files open second, but Datagrip's basis as an IDE makes it very easy to maintain collections of scripts (version migrations etc).
That said, I'm not sure if the 99 bucks (a year if you want updates, though you get a perpetual license for the current version) is worth it. I use it because it's part of Jetbrains' all products pack, which I paid to use other IDEs, essentially giving me Datagrip for free. If you're not already a Jetbrains customer you could definitely give it a go, but the value per dollar it provides is very different.
With Datagrip, you get all the niceties of a JetBrains IDE: massive customization, numerous plugins (e.g. IdeaVim, GitHub Copilot), lots of documentation. But you also get support for countless Db engines - I haven't seen anything yet which wasn't supported. The only one that was half-baked was Redis support, but it's not exactly a Db, either. Most importantly, it's that the UI doesn't feel clunky, unlike with PgAdmin. Everything feels streamlined and 1 or 2 clicks away, at most.
I doubt any new hotness could tear me away from Datagrip. I've used loads of database admin UIs over the years, and Datagrip is by far the most impressive.
This is going to be subjective, but the interface is better, especially if you're used to other jetbrain products. I haven't used pgAdmin for a while, but I remember the autocomplete being clunky to use and, quite frankly, quite bad.
My company had some leftover Datagrip licences, and it felt like moving from notepad to an IDE. I haven't looked back since.
In my experience most SQL developers don't care too much about tooling. In most cases someone designs the database and tables, developers don't care about databases and care mostly about tables and views, rarely about indexes. The ones that care, and need tooling, are usually called development DBAs and they are very rare. Rare enough I was never able to hire one and keep them (we don't pay enough for how rare they are).
I've been in that camp for much of my career, and yes, tooling matters.
As you suggest however, tooling for that workload is pretty rare. I want something that focuses on enhancing the database development experience: that understands that there are development workflows for database code which are well controlled and rigorous. So many database tools are focused on being system administrative aids first, or giving you features for directly interacting and <ack> altering the running state of the database and its server from the tool.
The best tool I found for what I do was targeted at Oracle: Allround Automation's PL/SQL Developer (https://www.allroundautomations.com/products/pl-sql-develope...). It's a development oriented tool that, at least last I used it, was focused on serious development work rather than administrative work. Now, I haven't used it in almost 20 years when last I did Oracle development... but I haven't found anything for PostgreSQL that has that thoughtfully implemented database developer centric feature set.
Today I muddle through with DataGrip. DataGrip has just enough of what I need that it's marginally better to work with than just a simple text editor... and also narrowly avoids some misfeatures as not to negate it's utility.
I loved workgroup style app development. R:Base, Access, dBase, FoxPro. Then I switched to UI work for a stretch.
Circling back to back-end work, naive me embraced Hibernate (2004?), assuming it'd be familiar and good.
I was wrong.
Now that I have a lot of free time, I'm finally recreating the workgroup style experience, for the general dev population. Sort of.
Using Hibernate, our workflow became: rough in some ORM hack, capture the generated SQL, use SQL Query Analyzer and Toad to make it work (and performant), coerce Hibernate to regenerate the SQL we want. Totally backwards, right?
Eventually we gave up and just used HQL.
At that point, why even bother with ORM?
So I created a "SQL first" workflow. Treat your SQL (DML) as source code, use those explicit queries to generate the prepared statements (and typesafe DAOs, DTOs, etc). In other words, auto-generate all the things you'd do yourself, if only you had more time.
I used my tool for years. Am currently making it usable for other devs. eg Spent last week making my grammar for MySQL "good enough" for initial release. Already have PostgreSQL and SQLite, plus my original turrible "poor mans SQL" grammar (comparable SQL-92). Which I'll cull once I have "good enough" T-SQL and PL/SQL grammars.
Any way. Thanks for reading.
I only meant to confirm your experience with development DBAs. The only such person I was able to retain was near retirement and was tired of the hustle.
Hmmm, interesting. I used Datagrip for some years, now DBeaver (as I don't have a JB subscription anymore). Datagrip was and probably still is very powerful with top intellisense. Now I'm using DBeaver and it's very solid. Ok, I'm not spending my whole day in it, but when I need it, it does the job well.