自SQL Server 2016起,用于SQL Server的工具已独立于服务器产品“开箱即用”地发布。这使我们可以更加灵活地满足用户的需求,更快地获得功能和错误修复,并与Azure SQL的更连续的发布周期保持一致,并且通常使工具团队能够以激动人心的方式进行创新。但是,副作用是,可能难以理解整个工具领域中正在发生的事情,因为在每个月都频繁发布的多个产品中,情况变化很快。
SQL Server客户端工具涵盖了产品的全部广度和深度,可以大致分为以下几种:
- SQL Server驱动程序和连接API,例如Microsoft.Data.SqlClient,ODBC,JDBC等。
- SQL Server工具API和脚本支持,包括SQL Server管理对象(SMO),DacFX和PowerShell
- 适用于SQL Server的命令行工具,例如sqlcmd,bcp,mssql-cli和sqlpackage
- Jupyter Notebooks,这个领域的新成员,弥合了CLI到GUI的鸿沟
- 适用于SQL Server的图形工具,包括SQL Server Management Studio,Visual Studio,Azure Data Studio和Visual Studio Code
- Azure门户体验支持Azure SQL产品家族
自SQL Server的上一主要发行版以来,每个领域都有重要更新。
SQL Server驱动程序
Microsoft维护或贡献了许多支持多种语言的SQL Server驱动程序。在将新功能添加到Azure和SQL Server时,某些功能需要在协议和驱动程序级别进行更新,其中包括UTF-8支持,始终加密和数据分类等功能。该领域最重要的战略更新是从System.Data.SqlClient更改为Microsoft.Data.SqlClient,这是.NET生态系统的主要驱动程序。您可以在.NET公告博客中阅读有关此内容的更多信息。。现在通常可以使用Microsoft.Data.SqlClient驱动程序及其关联的NuGet包,并且尽管将继续支持System.Data.SqlClient,但建议使用新的即用的Microsoft.Data.SqlClient程序集。 NET开发人员将来将目标对准SQL Server。
SQL Server API和脚本
重要的SQL Server管理对象(SMO)和DacFX库中有不间断的工作,它们是其余大多数工具堆栈用于与SQL Server交互的应用程序接口。随着SQL Server 2017引入对跨平台工具的需求,过去几年来在更新这些程序集上花费了很多心血,以便可以在MacOS,Linux和容器中使用它们。在SQL评估API是一种新产品,它允许使用SQL Server管理对象和使用PowerShell执行最佳实践检查。SQL Server PowerShell模块继续进行非常定期的更新,在过去两年中已发布了17个版本。这些功能被广泛使用,自2017年以来,SQL PowerShell模块已被下载超过230万次。
命令行工具
由于SQL Server命令行工具在非图形和自动化用例中起着重要作用,因此它们是容器,Linux和MacOS用户跨平台采用的一些首批也是最重要的工具。开源mssql-cli是一种新的命令行工具,与sqlcmd相比,它具有更加用户友好的交互式查询体验,并且sqlpackage.exe中已进行了重要的工作以允许跨平台提取和构建dacpacs。这项工作不仅是将更多跨平台开发人员经验引入图形工具的基础,而且还被证明可以带来显着的性能改进。
Jupyter笔记本
Jupyter笔记本电脑的灵活便携式格式已经在数据科学和大数据社区中流行了很多年。但是,随着对Azure Data Studio笔记本的全面保真T-SQL支持的引入,这项技术已与更广泛的SQL Server用户社区相关,包括开发人员,IT专业人员,数据库管理员,分析人员等等。Jupyter笔记本的性质可创建“文档CLI”体验,可用于开发,数据探索,故障排除,文档等。通过与Microsoft工具(例如Azure Data Studio,PowerShell和Azure数据)的集成,以及与Papermill等开源平台的结合,笔记本可以用作交互式和非交互式的可操作体验。SQL Server团队正在大量投资于笔记本和相关的Jupyter Book概念,以用于产品文档,部署等。Azure Data Studio提供了完整的Jupyter Notebook编辑器,并支持SQL,Python,Apache Spark™,Scala,R和PowerShell。
图形工具
SQL Server的图形工具是产品组合中最明显和可识别的工具。SQL Server的旗舰图形界面是SQL Server Management Studio(SSMS),该工具已被数百万人使用了15多年。从SQL Server 2016开始,SQL Server Management Studio可以从SQL Server单独下载获得。在过去的一年中,主要版本18.0发布了,随后以大约每两个月的节奏发布了一些次要版本。SQL Server Management Studio的定期更新和改进将继续,但是图形工具领域中的大多数净新创新(例如笔记本支持)都有望在Azure Data Studio中提供。。作为旨在支持多个数据库系统的跨平台工具,Azure Data Studio的运行空间与SQL Server Management Studio略有不同。Azure Data Studio是开源的,按月发货,去年具有主要功能,包括Jupyter笔记本,Dacpac导入,导出,架构比较,外部表创建,SandDance中的数据可视化以及社区和商业合作伙伴提供的扩展。Azure Data Studio还投资了SQL Server的部署体验,这是从使用SQL Server CD安装SQL工具的时代开始的。
Azure门户
在Azure门户中,正在做大量工作来整合,标准化和简化使用Azure SQL产品系列的过程,包括Azure虚拟机上的SQL Server,Azure SQL数据库和Azure SQL托管实例。在过去的几个月中,我们带来了新的统一部署和管理经验,并不断向前发展,我们打算带来更多与规模及更大范围相关的管理功能。




