SQL Prompt:提升数据库开发效率的利器

作为一名数据库开发人员,日常大部分时间都在SQL Server Management Studio (SSMS) 和 Visual Studio (VS) 中度过。同时,也是Redgate工具的忠实粉丝。今天,想与大家分享对SQL Prompt的喜爱之情。SQL Prompt是一款能够节省和团队时间的工具,这最终意味着为雇主节省金钱。接下来,将展示SQL Prompt如何为做到这一点。

SQL Prompt能为做什么

正在使用的是SQL Prompt的第7版本,可以在这里下载28天的免费试用版:

SQL Prompt提供的主要功能包括:

  • 智能代码补全(IntelliSense-style code completion)
  • 可定制的代码格式化(Customizable code formatting)
  • 代码片段库(Code snippet library)
  • 重构SQL代码(Refactor SQL code)
  • SSMS标签历史记录(SSMS tab history)
  • SSMS标签着色(SSMS tab coloring)

智能提示和格式化

让从智能提示功能开始。这个功能比SSMS和VS自带的体验要好得多。正如下面的图示所示,SQL Prompt的弹出窗口中提供了更多的信息。

喜欢建议的工作方式,可以通过图示中第一个弹出窗口底部的下拉列表来过滤这种行为。使用*通配符开始示例查询,以便向展示最喜欢的功能之一。将光标放置在*的末尾,可以按Tab键展开列列表,如下所示:

从这里开始,可以轻松编辑列列表,并在处理包含大量列的表时节省大量时间,这些列通常在查询中使用。在处理这个查询的同时,还想向展示如何轻松地更改格式。只需高亮SQL代码,然后右键单击即可使查询看起来很棒!

正确格式化的SQL更容易维护,SQL Prompt允许对喜欢的格式化方式有很多控制权。

代码片段

SSMS已经支持模板多个版本,允许重用样板脚本,轻松在数据库中创建对象。SQL Prompt通过实现代码片段库将这个概念提升到了一个新的水平。SQL Prompt中已经内置了许多代码片段,激活一个片段就像输入片段定义一样简单,例如“st100”来选择表中的前100行,如下所示:

可以轻松地高亮现有查询并将其转换为片段,使用占位符。内置的占位符是保留字,它们是特定信息的变量,或者代表可以应用于片段的操作。要了解它们的结构,只需打开片段管理器并查看现有片段的定义。还可以创建自定义占位符,它们基本上是自由文本字段。Alasdair Daw在这里有一篇精彩的文章,探讨了这个功能的细节:

创建片段的能力对于重复性任务非常有用,但在重新发明轮子之前,请务必查看Gaurav Vohra在Git上的有用片段库:

前面提到了SSMS模板,并想指出还可以在SQL Prompt片段中使用这些模板参数。Redgate的好人在这里有一个出色的教程:

重构

重构代码的能力是任何工具集中最有价值的功能之一。经常发现自己在大型遗留系统上工作,这些系统采用了糟糕的命名约定,或者在大多数情况下,没有一致的编码标准。前面在展示SQL Prompt的格式化功能时提到,正确格式化的代码更容易维护,从而节省时间和金钱。

SQL Prompt有许多令人惊叹的重构功能,首先是:

  • 智能重命名(Smart Rename)

它允许右键单击并重命名对象,而不会破坏依赖关系。这使得将命名标准应用于现有表、视图、存储过程和函数及其各自的列名和参数变得更加容易。还可以重命名脚本变量。

长期以来一直主张在数据库项目中使用存储过程,SQL Prompt支持高亮任何有效的SQL块并将其封装到存储过程中的能力。

目前正在工作的系统始于团队继承了一个遗留系统。通过使用上述功能,这使能够及时地正确命名和格式化脚本和数据库对象。还有了大大改善数据库规范化的机会,这需要将几个现有的表分割成两个或更多的表。SQL Prompt在支持这一行动方面提供了帮助:

标签

标签历史记录(SQL 2008或更高版本)是一个不错的功能,它存储了打开的标签列表,并允许轻松地返回到它们,以及重命名或从列表中删除它们的能力。这可能看起来很简单,但随着年龄的增长,有时会忘记在购物中心停车的地方,所以对来说,有这个历史列表很方便。

将以SQL Prompt新增加的彩色标签功能(SQL 2012或更高版本)结束SQL Prompt功能的介绍。这允许为标签选择不同的颜色以代表不同的服务器或数据库连接,如下所示:

正如可能想象的,当必须在不同的环境工作时,这个功能是天赐之物,需要停止在错误的环境运行脚本的疯狂。这是另一个简单的功能,它消除了混淆,支持在数据库和服务器组级别进行着色,并支持通配符匹配。可以在这里阅读有关这个新功能的更多信息:

与Visual Studio集成

几乎所有看过的很棒的功能以及更多都可以在VS中使用。正如从下面的图示中看到的,SQL Prompt在VS开发环境中添加了一个菜单项,就像在SSMS中一样,以及当访问弹出菜单时的额外条目。

已经使用Redgate工具超过10年了,Redgate团队在SQL Prompt上做得非常出色。SQL Developer Bundle,包括SQL Prompt,是为数据库管理员和架构师团队购买的第一个工具,当开始当前的项目时。可以诚实地说,这些工具为节省了数百人小时,并多次支付了购买费用。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485