SQL Management Studio的SQL Formatter

lom*_*axx 240 sql formatting ssms

我想知道是否有一个SQL Server Management Studio的插件/工具可以格式化你的SQL?

我正在处理一些大型存储过程,这些过程是格式错误的SQL格式错误,如果我可以选择"全选 - >格式化SQL",那就太好了.

Tao*_*Tao 256

迟到的答案,但希望是值得的:穷人的T-SQL格式化程序是一个开源(免费)T-SQL格式化程序,具有完整的T-SQL批处理/脚本支持(任何DDL,任何DML),SSMS插件,命令行批量格式化程序和其他选项.

它可以在http://poorsql.com上立即/在线使用,并且今天刚刚毕业到"1.0版"(它已经测试了几个月),刚刚获得了对MERGE语句,OUTPUT条款和其他挑剔内容的支持.

SSMS加载项允许您设置自己的热键(默认为Ctrl- K,Ctrl- F以匹配Visual Studio),并格式化整个脚本或仅选择/突出显示的代码(如果有).输出格式是可自定义的.

在SSMS 2008中,它与内置的智能感知很好地结合,有效地提供与Red Gate的SQL提示相同的基本功能(SQL Prompt当然有额外的东西,如片段,快速对象脚本等).

我们非常欢迎您提供反馈/功能请求,如果您有机会请给它一个旋转!

披露:这可能是显而易见的,但我写了这个库/工具/网站,所以这个答案也是无耻的自我推销:)

  • @ tao,试过n ++插件.真棒 (8认同)
  • 查看SSMS 2014 instalations的提示http://stackoverflow.com/questions/23303026/does-the-poor-mans-t-sql-formatting-add-in-for-management-studio-2012-work-in-ma (5认同)
  • 在SQL Server 2012上,默认的Ctrl + K,Ctrl + F快捷方式不起作用,因为它已经绑定到_Format Selection_.将它从`DataWarehouse Designer :: Ctrl + k,Ctrl + f`改为`Global :: Ctrl + k,Ctrl + j`后工作. (2认同)
  • 伟大的工具,但与2016 RTM不兼容 (2认同)
  • @Jordan:在Windows 10中,.Net Framework 3.5 SP1(包括.Net 2.0)是Windows的可选功能,可以在“打开或关闭Windows功能”屏幕/功能中启用。它被称为“ .NET Framework 3.5(包括.NET 2.0和3.0)”,它就位于可选功能列表的顶部-这对您不起作用吗?(是的,很抱歉,在当今时代要求使用.Net 2.0可能不合理。。。创建的问题https://github.com/TaoK/PoorMansTSqlFormatter/issues/199进行跟踪) (2认同)

Jus*_*tin 115

我偶然发现了一个特殊的伎俩.

  1. 选择要格式化的查询.
  2. Ctrl+ Shift+ Q(这将在查询设计器中打开您的查询)
  3. 然后就去OK瞧!查询设计器将为您格式化查询.警告是你只能为语句而不是程序代码执行此操作,但它总比没有好.

  • 这只有在查询内容能够以图形方式表示时才有效. (15认同)
  • 不错的提示.可悲的是,虽然这种方法确实有效,但它的工作相当糟糕.但至少内置了一些东西. (8认同)
  • 好吧,据我所知,虽然它并没有真正做到最好,它做了一些事情,而且开箱即用,你不需要付钱.但只有一个人认为将其打勾为有用.我真的很惊讶,我以为我有这个挂钉;-) (2认同)
  • 小心它不仅不适用于复杂的查询(需要格式化的查询),而且,如果您选择一个复杂的查询并在 Management Studio v 11.0.6020 下按 Ctrl+Shift+Q 它**崩溃,可能丢失了你的一些工作。**(尽管有恢复功能。) (2认同)

小智 114

今天我发现了Apex SQL Refactor.这是一个免费的插件.与SSMS集成.缺点是它是一个全有或全无的过程.键入时不会重构.

  • 也许事情又变了?[Apex SQL Refactor](http://www.apexsql.com/sql_tools_refactor_compare_versions.aspx)看起来像是Free和Pro($ 299)版本. (18认同)
  • +1 Apex SQL Refactor建议.现在它是他们的免费工具之一. (4认同)
  • 这是下载链接:http://www.apexsql.com/zips/ApexSQLRefactor.exe (3认同)
  • 我添加了这个东西,它甚至在常规的Visual Studio中完全劫持了我的所有键盘快捷键......而不仅仅是SSMS.我也进入了一个不错的Visual Studio崩溃周期,并且不得不使用任务管理器杀死它们......卸载并将尝试穷人的格式化程序. (3认同)

Sha*_*ore 23

Red-Gate生成一对,Sql Prompt Pro或Sql Refactor.还有一百万人没有插入管理工作室,但Red-Gate是我所知道的唯一插件,而且效果非常好.它们还提供智能和一些其他有用的功能.

http://www.red-gate.com/products/SQL_Prompt/index.htm

  • SLQ Refactor非常好,虽然这个特定项目的价格范围可能略高于295美元.下次我肯定会记住这一点 (3认同)

Mit*_*eat 19

这是一个免费的在线版本:http://www.sqlinform.com/(需要Java运行时环境)


小智 9

它不是内置的,但它使用起来很快.:) http://www.dpriver.com/pp/sqlformat.htm


ste*_*wpf 8

Azure Data Studio - 免费且来自 Microsoft - 提供自动格式化(编辑时按 ctrl + shift + p -> 格式化文档)。有关 Azure Data Studio 的更多信息,请访问此处

虽然这不是 SSMS,但它非常适合编写查询,免费且是 Microsoft 的官方产品。它甚至是跨平台的。小故事:只需切换到 Azure Data Studio 即可编写查询!

更新:实际上 Azure Data Studio 在某种程度上是 Microsoft 推荐的用于编写查询的工具(来源

如果您:[..] 主要是编辑或执行查询,请使用 Azure Data Studio。

  • 只是为了清楚起见添加 Azure Data Studio 是一个本地工具,适用于本地、本地和云中的所有数据库,其名称具有误导性。 (3认同)

Phi*_*den 7

不是SSMS的插件,但我觉得这很方便在我的浏览器中保留为书签:http: //www.dpriver.com/pp/sqlformat.htm

编辑:哎呀 - 我刚刚注意到他们有SSMS,Visual Studio和桌面版等的版本.还没有亲自尝试过.


jco*_*lum 5

这个(Gudu软件)相当不错,在Management Studio中工作并且相当便宜.我认为它需要更多选项,但几个月没有使用它,也许他们已经添加了一些新功能.当我使用它时,我很高兴.还有一个免费的在线版本.


小智 5

SSMS工具包可以很好地进行格式化,并且包中的其他工具非常方便

  • 据我所知,它只是使所有关键字大写或小写,非常简陋. (3认同)