SQL tools overview
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
To manage your database, you need a tool. Whether your databases run in the cloud, on Windows, on macOS, or on Linux, your tool doesn't need to run on the same platform as the database.
Recommended tools
The following tools provide a graphical user interface (GUI).
You can view the links to the different SQL tools in the following tables.
Tool | Description | Operating system |
---|---|---|
**Azure Data Studio** |
A light-weight editor that can run on-demand SQL queries, view and save results as text, JSON, or Excel. Edit data, organize your favorite database connections, and browse database objects in a familiar object browsing experience. | Windows macOS Linux |
SQL Server Management Studio (SSMS) |
Manage a SQL Server instance or database with full GUI support. Access, configure, manage, administer, and develop all components of SQL Server, Azure SQL Database, and Azure Synapse Analytics. Provides a single comprehensive utility that combines a broad group of graphical tools with many rich script editors to provide access to SQL for developers and database administrators of all skill levels. | Windows |
SQL Server Data Tools (SSDT) |
A modern development tool for building SQL Server relational databases, Azure SQL databases, Analysis Services (AS) data models, Integration Services (IS) packages, and Reporting Services (RS) reports. With SQL Server Data tools (SSDT), you can design and deploy any SQL Server content type with the same ease as you would develop an application in Visual Studio. | Windows |
Visual Studio Code |
The mssql extension for Visual Studio Code is the official SQL Server extension that supports connections to SQL Server and rich editing experience for T-SQL in Visual Studio Code. Write T-SQL scripts in a light-weight editor. | Windows macOS Linux |
Command-line tools
The following tools are the main command-line tools.
Tool | Description | Operating system |
---|---|---|
bcp | The bulk copy program utility (bcp) bulk copies data between an instance of Microsoft SQL Server and a data file in a user-specified format. | Windows macOS Linux |
mssql-conf | mssql-conf configures SQL Server running on Linux. | Linux |
sqlcmd | The sqlcmd utility lets you enter Transact-SQL statements, system procedures, and script files at the command prompt. | Windows macOS Linux |
sqlpackage | sqlpackage is a command-line utility that automates several database development tasks. | Windows macOS Linux |
SQL Server PowerShell | SQL Server PowerShell provides cmdlets for working with SQL. | Windows macOS Linux |
Migration and other tools
These tools are used to migrate, configure, and provide other features for SQL databases.
Tool | Description |
---|---|
Configuration Manager | Use SQL Server Configuration Manager to configure SQL Server services and configure network connectivity. Configuration Manager runs on Windows |
Database Experimentation Assistant | Use Database Experimentation Assistant to evaluate a targeted version of SQL for a given workload. |
Data Migration Assistant | The Data Migration Assistant tool helps you upgrade to a modern data platform by detecting compatibility issues that can affect database functionality in your new version of SQL Server or Azure SQL Database. |
Distributed Replay | Use the Distributed Replay feature to help you assess the impact of future SQL Server upgrades. Also use Distributed Replay to help assess the impact of hardware and operating system upgrades, and SQL Server tuning. |
ssbdiagnose | The ssbdiagnose utility reports issues in Service Broker conversations or the configuration of Service Broker services. |
SQL Server Migration Assistant | Use SQL Server Migration Assistant to automate database migration to SQL Server from Microsoft Access, DB2, MySQL, Oracle, and Sybase. |
If you're looking for other tools that aren't mentioned on this page, see SQL Command Prompt Utilities and Download SQL Server extended features and tools