The last few months have been a bit hectic for me and so I’ve not had a lot of time to devote to writing on this site. We’re currently enduring a heat wave with record breaking temperatures so focusing on anything is feeling like an up hill battle. However, rather than let another month pass by without me contributing to this site I thought I’d write something a little different to normal.
For the last few months I’ve been using a great app for working with databases called TablePlus. I want to share with you some of the reasons why I like it. Just to be clear, this is a personal piece; I have not been paid to write this and have no affiliation with TablePlus or its developers. I simply love using it and here’s why.
First up, TablePlus will connect to virtually any database type you could ever need. Unlike some of the alternatives that I have used in the past like Sequel Pro and PHPmyAdmin it supports PostgreSQL, SQL Server, Mongo and SQLite as well as MySQL (and the MariaDB fork). It even supports in-memory databases like Redis. I mainly deal with MySQL/MariaDB connections, but also have some data stored in Redis, so being able to use one app to access all of them is really useful.
You can easily sort and label your different database connections so that they are easy to work with. Databases can be grouped (much like in Sequel Pro), but each group can be given a custom icon to distinguish between them. On top of that you can assign colours and label connections as things like Production, Staging or Local. It means that when I am working with a database I can clearly see whether I am playing with live data or just some local test data that doesn’t matter too much if it gets messed about with.
I regularly work with Visual Studio Code (and before that Sublime Text) and love being able to quickly switch between projects and files via the Command Palette shortcut. TablePlus comes with a similar feature: Open Anything allows you to call up a fuzzy search field via a keyboard shortcut to search a connection’s databases, tables and functions. This is really slick and I’ve found it really helps me work with servers that have many databases or databases with many tables.
One feature that would be really nice to have would be a proper Command Palette that lets you also fuzzy search for commands available in the menus like seen in the code editors I’ve just mentioned. It possibly already exists, but I haven’t seen this yet. If it doesn’t then I’d love to see this get added.
I also like that you can have multiple tabs for each open connection. Tabs can be the spreadsheet-like editor of a table or TablePlus’ SQL editor.
Compared with Sequel Pro filtering data feels a lot slicker. It’s better integrated into the interface. TablePlus makes it easy to add multiple filters (including raw SQL) and then toggle them off and on individually. I find this part of the app superior to the alternatives out there.
TablePlus also provides a simple interface for restricting which columns are shown as part of its table editor.
The way that editing a table’s data works in TablePlus caused me a little confusion at first but has since become one of my favourite features. Much like other database apps you can edit rows directly inline. However, TablePlus won’t save your changes until you are ready to commit them. There are buttons in the toolbar for discarding all the changes, previewing them and committing them to the database. This acts as a handy guard against accidentally changing something on a database, especially a production one. TablePlus also highlights any pending changes until they are committed.
You can also easily modify multiple rows via the row detail pane that can be toggled on or off on the right hand side of the window; so you can quickly select multiple rows and then set a value to be saved to all of them. Of course, the same can be achieved by writing your own update query which brings me to the Query Editor.
Every database app I’ve used has come with a query editor. Most of them offer some form of autocomplete, syntax highlighting and query reformatters so that you can beautify your code. TablePlus does all these and in some cases I’ve felt like its done a better job of them compared with some of the alternatives I’ve tried.
However, TablePlus does more with the query editor than its rivals. It adds features more common in popular text editors and IDEs like split panes and toggling line and block comments which make working with big queries a more pleasurable experience. Plus it includes a query history so that you can replay past queries or add them to your favourites for future reference.
Another feature I like is that you can quickly export your query’s results to CSV, JSON and SQL files which can be very useful.
Should you pay for it?
TablePlus is free to use, but the free version is really intended to be a trial version with some restrictions on the number of open tabs and filters. For most people this will be sufficient and means they can use TablePlus free of charge.
Contrary to the popular saying, the best things in life aren’t always free. It costs to build great tools like TablePlus, so if you can afford to contribute back to the developers it is well worth purchasing a license. After a couple of months I personally decided to fork out for a licensed copy. For the amount I use an app like this to get my work done it felt well worth the price and a good way of letting the developers know that I appreciate their hard work.
If you’ve not tried TablePlus yet I’d highly recommend giving it a try. In many ways it is just another database app, but where it shines is the little extras like simple navigation, safe guarding live data and a powerful query editor among many other great features.