this post was submitted on 17 Nov 2023
17 points (100.0% liked)

Ask Experienced Devs

1232 readers
1 users here now

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 1 year ago
MODERATORS
 

Was just wondering what's popular nowadays, maybe I find something new and better - what kind of tools are you using to access and manage databases?

I'm personally using Dbeaver a lot but honestly it feels increasingly more buggy and unreliable as time passes, every installation and update has had (unique) issues so far and there's little support. However the ease of use and some powerful, convenient, utilities in it make it preferable to others.

all 14 comments
sorted by: hot top controversial new old
[–] hikaru755@feddit.de 13 points 1 year ago (2 children)

I'm quite happy with the Database tools integrated in IntelliJ Ultimate (you can also get them standalone as DataGrip, I think). Granted I'm a full-stack developer and not a full-time database guy, but for my needs, they do the job very well.

[–] breadsmasher@lemmy.world 7 points 1 year ago

+1 for datagrip!

[–] jjjalljs@ttrpg.network 5 points 1 year ago

Yeah I also use whatever they're called bundled into jetbrains' pycharm. It's very convenient that it's just right there. It does auto complete competently. Exports data nicely. No real complaints.

[–] 0x0@programming.dev 12 points 1 year ago* (last edited 1 year ago) (2 children)

DBeaver is multi-platform and multi-db, which is why i use it, haven't had any major issues with it but don't use it for overcomplicated stuff either, just running queries. Does rely on java, though...

[–] nichos@programming.dev 2 points 1 year ago

Beaver is great. Once you learn it you can pretty much use it on any server.

[–] learningduck@programming.dev 2 points 1 year ago

Second this. I could use it in place of DataGrip if the company doesn't buy it for me.

[–] snowe@programming.dev 7 points 1 year ago
[–] dotdi@lemmy.world 4 points 1 year ago* (last edited 1 year ago)

Tableplus

Been using it since it was in beta, it just does everything I need, supports many SQL and NoSQL DBs and has been a joy to work with overall.

Found a bug in the Cassandra driver a while back and the team was very responsive and pushed a fix in just a few days.

[–] lurch@sh.itjust.works 4 points 1 year ago* (last edited 1 year ago)

For Windows HeidiSQL is very useful. Like it can have placeholders with the date in the export filename; almost like using a Linux shell and using $(date +%...). Can recommend.

[–] RonSijm@programming.dev 4 points 1 year ago

I'm generally using DataGrip - or MySQL Workbench.

Workbench isn't great and the intellisense barely works, but at least I already know where all the obscure ACL options and such are

[–] Severalkittens@lemmy.world 4 points 1 year ago (1 children)

I absolutely love beekeeper studio. Free community edition and it's hosted on GitHub!

[–] Cyno@programming.dev 1 points 1 year ago

Thanks, I'll give it a try! I'm really surprised this is the only suggestion here that's free / open source (at least the community edition), basically everything else is subscription based.

[–] BehindTheBarrier@programming.dev 4 points 1 year ago* (last edited 1 year ago)

So far, no favorites. Be warned, more a rant than anything. It's a burded of my workplace but we use oracles PL/SQL and are constrained by that and honestly nothing is good for it. It's part of the reason why it's a huge technical debt, along side how shitty debugging. Because we can't, there's a way but our firewall have been a big opponent.

But Toad is the best one, and also the worst one. Slow, old, outdated application with a price that is sky high, but the company pays for that. Had it been only SQL, I'd probably be content with jetbrains alternatives. But it does not have good code highlighting for plsql, including a lot of errors on various things. Toad does autocomplete, slow and ugly, and not all things work, but it does it. But Toad is king for doing things to the database. Easy overview of invalid objects, tables, indexes, scripts. You just need to wait for the window to slowly render, and hope the database connection didn't time out since you last used it, or otherwise the application will hang for a while, tell you it didn't work because the connection was lost and then ask if you want to reconnect, sometimes. Other times I crashes, or crashes on the thing you've done a hundred times. Or reports some memory error. God try closing a connection tab when you lost connection to the database or the database turns off. Faster to kill toad with task manager than wait for it to tell you it can't connect to disconnect from the database.

But we need it, because we need to run sql plus scripts, because compiling a package and getting errors and getting taken to the relevant lines is fast. Datagrip couldn't do that, it gave me a terminal with the entire package as inout before printing the errors. Which would significantly increase dev time, and the burden on our sanity, when we can't click the errors.

Toad manages multiple connections nicely, even if you need to wait 2 second when changing between the tabs for each connection because the interface is slow. Datagrip spent ages indexing schemas, didn't keep up with changes and somehow asked for which connection to use in every file you opened. It was messy, toad had database context much more organized. While I'm full stack, I do dabble in more than one database pretty often. From managing the QA databases, to setting up multiple bases for testing or using a few for my own development.

Toad is suffering, and on some days nothing feels like it will work. But it's still the best tool we can find. And not to forget auto format and easy explain plans. Toad had a formatter I haven't looked much at, but it's customization is more details and actually supports plsql, where Datagrip left some of our queries in awful states. The explain plan is a minor one, but it's nice to have it at the press of a button.

But toad is hell. It's slow, it freezes for a second trying to give you autocomplete options, even where you didn't want some like using a builtin sql function... Honestly an area Datagrip was better, except it also highlited all row type properties as missing making errors hard to spot when a file has countless useless errors that you can't remove without taking everything away. Datagrip also made going to function definitions awful, because you often got taken to the database source or got the option between the database and the mapped local files which was very clunky and made a mess of open tabs. Toad only opened the db source, unless you had the file for a package already open and it would take you the the function there. But it's so much more convenient after the files are opened. And development usually doesn't touch more than 4-6 at a time, so once you got them ready things were relatively smooth in Toad.

But don't get Toad, the solution is to not have Pl/sql