After
almost fifteen years of heavy usage by developers and database administrators
(DBAs), it might seem like Microsoft’s free tool, SQL
Server Management Studio (SSMS), is about to go out of style.
After
all, SSMS is no longer the cool new kid on the block: Microsoft has shown consistent
effort to develop their new tool, Azure
Data Studio (the artist formerly known as SQL Operations Studio), since
November 2017. Azure Data Studio is built on the modern foundation of Microsoft’s
VS Code, whereas SQL Server
Managed Studio is related to the legacy Visual Studio Shell.
Based
on this overview, it might seem like a new SQL Server DBA or developer should primarily
learn Azure Data Studio, not SSMS. And it might similarly seem like vendors
should focus on developing new tooling only for Azure Data Studio.
But
when you look into the details of how Azure Data Studio is being developed, it
becomes clear that SSMS is still just as relevant than ever:
Azure Data Studio really
shines where it specializes in different functionality than SSMS provides
While both Azure Data Studio and SSMS each provide an interface to author queries and to execute them against relational database instances, I find that the user experience in Azure Data Studio is often not nearly as smooth as it is in SSMS.
Where Azure Data Studio really shows its value is in unique experiences:
- SQL
Notebooks
(based on Jupyter notebooks) which offer an experience of “interactivedocumentation” and more
- The ability for users to connect, manage, and
query different database platforms, using tools
like the PostgreSQL extension
- The ability for MacOS or Linux users to run
Azure Data Studio natively, without installing a Windows client
- The ability to work in other languages,
such as PowerShell
Azure Data Studio is being built to sometimes connect with SSMS
One Azure Data Studio feature I noticed recently is “Release of Database Administration Tool Extensions for Windows” in June 2019. Here’s the overview of the feature:
This extension launches two of the most used experiences in SQL Server Management Studio from Azure Data Studio.
Release Notes for Azure Data Studio (emphasis mine)
As a MacOS user, I was slightly disappointed that this is a Windows-only feature — it’s Windows-only because it requires that SSMS be installed, so the SSMS feature can be launched inside Azure Data Studio.
However, I understand where this is coming from: I don’t need every SSMS feature to work natively in Azure Data Studio on MacOS, and I suspect that this saved a ton of engineering work. If Microsoft plans to support and develop both tools long-term (and I believe this is evidence that they do), it makes sense to strategically create these dependencies.
SSMS is still under active development
A
major update to SQL Server Management Studio, SSMS 18.0, released in April 2019.
This release included many improvements and new features. New features have
been regularly added in the versions since this release as well.
This pattern shows evidence to support Dinakar
Nethi’s suggestion in his SSMS
18.0 release announcement that we should “think of these two tools not as
separate tools doing different things, but as one integrated tool. Each tool
has different experiences built into it and can be launched from the other
seamlessly.”
Users still care a ton about SSMS – and therefore, vendors care about it as well
One
comment I have frequently heard over the years from developers and DBAs who
work with multiple platforms is that they are impressed by the richness of
tooling provided for the Microsoft Data Platform at no extra charge. SSMS provides
a very rich experience and covers a vast amount of features – and we users very
much enjoy it.
For this reason, vendors will continue to build new features for SSMS.
For example, at Redgate, we have just created a major new extension for SQL Change Automation in SSMS, which allows users to author changes in a migrations-first approach to development. We wish to empower teams to collaborate both across Visual Studio and other IDEs, and we recognize that SSMS continues to be the primary tool for Microsoft Data Platform DBAs and many developers – it remains incredibly valuable to offer users the ability to work in SSMS.
Where do we go from here?
SSMS
remains the primary tool for SQL Server specialists. Azure Data Studio is a terrific,
complementary tool, with strong use cases for cross-platform experiences and SQL
Notebooks.
For new database administrators working with the Microsoft Data Platform, it continues to make sense to download and learn SSMS first – but do take a few minutes to install both tools and play around with the SQL Notebook functionality in Azure Data Studio specifically, these can be a great tool for you to document information as you learn. This is also true for developers who need to perform some operational tasks.
For occasional users who only need to connect to existing instances and run queries, either SSMS or Azure Data Studio is a fine choice.
For odd users like me, who generally run in a MacOS or Linux environment, and who periodically do more in-depth performance tuning and database management tasks, it’s especially valuable to become fluent in both tools. I love using Azure Data Studio for its Notebook experience and running occasional queries against SQL Server running in Docker on my laptop when appropriate, and only firing up a Virtual Machine to use SSMS when I need a more in-depth experience.