Sql脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关。在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版不仅让人看起来赏心悦目,在和他人之间做交流时也省时省力,不会因为揉成一团的sql去询问Team Member:您能帮我解释一下这么一大段sql是做什么的吗?

虽然微软至SQL 2008以上的版本提供了SQL智能提示,但是它的反应实在是过于迟钝,等提示出来我们早就可以敲出一行语句了。而且它没有提供sql代码格式化的功能,咱们只能自己做手动格式化,手动格式化sql总是需要花费不少时间的。

SQL Prompt 出场

SQL Prompt是一款拥有SQL智能提示功能和格式化Sql代码插件。可用于的Microsoft SQL Server Management Studio和Visual Studio

SQL Prompt能根据数据库的对象名称,语法和用户编写的代码片段自动进行检索,智能的为用户提供唯一合适的代码选择。自动脚本设置为用户提供了简单的代码易读性。

出色的智能提示


sql server 的开发(SQL开发利器SQLPrompt)(1)


快速格式化 (快捷键 Ctrl K Y)

格式化之前

select b.proj,d.project_name,g.cname,b.id,b.ht_title,isnull(b.htzje,'0') as htzje,isnull(b.yifk,'0') as yifk,sum(isnull(a.je,'0')) as je,g.id as sort from cnto_fk a left join cnto b on a.pid=b.id left join project_table d on b.proj=d.pc_code left join sys_common g on a.fzno=g.cno and g.ctype='cnto_htlx' where 1=1 and d.project_name is not null and a.title is not null and convert(varchar(10),a.sfkrq,120) between '2015-10-01' and '2015-10-31' group by b.proj,d.project_name,g.cname,b.id,b.ht_title,b.htzje,b.yifk,g.id union select a.project_no as proj,d.project_name,g.cname,'' as id,a.title as ht_title,'0' as htzje,sum(isnull(a.je,'0')) as yifk,sum(isnull(a.je,'0')) as je,g.id as sort from cnto_fk a left join project_table d on a.project_no=d.pc_code left join sys_common g on a.fzno=g.cno and g.ctype='cnto_htlx' where a.fzno='qt' and d.project_name is not null and a.title is not null and convert(varchar(10),a.sfkrq,120) between '2015-10-01' and '2015-10-31'

格式化后

sql server 的开发(SQL开发利器SQLPrompt)(2)


,