SQL Tools and Utilities for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse

THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

To manage (query, monitor, etc.) your database you need a tool. There are several database tools available. While your databases can be running in the cloud, on Windows, or on Linux, your tool doesn't need to run on the same platform as the database.

This article provides information about the available tools for working with your SQL databases.

Tools to run queries and manage databases

Tool Description
Microsoft SQL Operations Studio (preview) SQL Operations Studio (preview) is a free, light-weight tool, for managing databases wherever they're running. This preview release provides database management features, including an extended Transact-SQL editor and customizable insights into the operational state of your databases. SQL Operations Studio (preview) runs on Windows, macOS, and Linux.
SQL Server Management Studio (SSMS) Use SQL Server Management Studio (SSMS) to query, design, and manage your SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. SSMS runs on Windows.
SQL Server Data Tools (SSDT) Turn Visual Studio into a powerful development environment for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. SSDT runs on Windows.
mssql-cli mssql-cli is an interactive command-line tool for querying SQL Server. mssql-cli runs on Windows, macOS, and Linux
Visual Studio Code After installing Visual Studio Code, install the mssql extension for developing Microsoft SQL Server, Azure SQL Database, and SQL Data Warehouse. Visual Studio Code runs on Windows, macOS, and Linux.

Which tool should I choose?

Additional tools

Tool Description
Configuration Manager Use SQL Server Configuration Manager to configure SQL Server services and configure network connectivity. Configuration Manager runs on Windows
mssql-conf Use mssql-conf to configure SQL Server running on Linux.
SQL Server Migration Assistant Use SQL Server Migration Assistant to automate database migration to SQL Server from Microsoft Access, DB2, MySQL, Oracle, and Sybase.
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.

Command line utilities

Command line utilities enable you to script SQL Server operations. The following table contains a list of command prompt utilities that ship with SQL Server.

Utility Description Installed in
bcp Utility Used to copy data between an instance of Microsoft SQL Server and a data file in a user-specified format. <drive:>\Program Files\ Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn
dta Utility Used to analyze a workload and recommend physical design structures to optimize server performance for that workload. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
dtexec Utility Used to configure and execute an Integration Services package. A user interface version of this command prompt utility is called DTExecUI, which brings up the Execute Package Utility. <drive>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn
dtutil Utility Used to manage SSIS packages. <drive>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn
Deploy Model Solutions with the Deployment Utility Used to deploy Analysis Services projects to instances of Analysis Services. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn\VShell\Common7\IDE
mssql-scripter (Public Preview) Used to generate CREATE and INSERT T-SQL scripts for database objects in SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. See our GitHub repo for download and usage information.
osql Utility Allows you to enter Transact-SQL statements, system procedures, and script files at the command prompt. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
Profiler Utility Used to start SQL Server Profiler from a command prompt. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
RS.exe Utility (SSRS) Used to run scripts designed for managing Reporting Services report servers. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
rsconfig Utility (SSRS) Used to configure a report server connection. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
rskeymgmt Utility (SSRS) Used to manage encryption keys on a report server. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqlagent90 Application Used to start SQL Server Agent from a command prompt. <drive>:\Program Files\Microsoft SQL Server\<instance_name>\MSSQL\Binn
sqlcmd Utility Allows you to enter Transact-SQL statements, system procedures, and script files at the command prompt. <drive:>\Program Files\ Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn
SQLdiag Utility Used to collect diagnostic information for Microsoft Customer Service and Support. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqllogship Application Used by applications to perform backup, copy, and restore operations and associated clean-up tasks for a log shipping configuration without running the backup, copy, and restore jobs. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
SqlLocalDB Utility An execution mode of SQL Server targeted to program developers. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn\
sqlmaint Utility Used to execute database maintenance plans created in previous versions of SQL Server. <drive>:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn
sqlps Utility Used to run PowerShell commands and scripts. Loads and registers the SQL Server PowerShell provider and cmdlets. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqlservr Application Used to start and stop an instance of Database Engine from the command prompt for troubleshooting. <drive>:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn
Ssms Utility Used to start SQL Server Management Studio from a command prompt. <drive>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn\VSShell\Common7\IDE
tablediff Utility Used to compare the data in two tables for non-convergence, which is useful when troubleshooting a replication topology. <drive>:\Program Files\Microsoft SQL Server\nnn\COM

SQL Command Prompt utilities syntax conventions

Convention Used for
UPPERCASE Statements and terms used at the operating system level.
monospace Sample commands and program code.
italic User-supplied parameters.
bold Commands, parameters, and other syntax that must be typed exactly as shown.