(小技巧)SQL Server Management提供的最简单的SQL查询语句格式化

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://www.cnblogs.com/jintan/archive/2008/03/27/1125853.html

   SQL语句写多了,难免经常会为乱七八糟的SQL而头痛,漂亮的代码看起来就是舒服、养眼,而且条理清楚。

   T-SQL语句本身就没有的格式化标准,所以,基本上每个人呢都有自己的风格,而且目前看到格式化SQL的工具好像不多,或者是功能很弱,其实最理想的是将SQL代码格式的功能集成到开发环境中去,例如集成到SQL Server Management或者VS中,这样就比较方便。

   现在来看看SQL Server Management内置的一个格式化select语句的小东东,被称为“在编辑器中设计查询”(下图中最后一个按钮),估计有好多朋友没有注意到

ITXGAIWH]M$GVLZ4T6HP9ZE

原来凌乱的SQL如下:

SELECT c.FName, c.FUrl, b.FDisplayName, b.FModuleID, b.FFuncName, a.FAuFlag, b.FRelPageUrl FROM   FuncInRoles AS a INNER JOIN
FuncInfos AS b ON a.FFuncID = b.FFuncID INNER JOIN Modules AS c ON c.FModuleID = b.FModuleID
WHERE (a.FRoleID = @RoleId) AND (b.FModuleID = @FModuleID) AND (a.FSchoolID = @SchoolId)
在代码编辑器选中要格式化的代码,点如图按钮
sql2 
代码立即被格式化,如下图
sql3 
格式化后的代码:
SELECT     c.FName, c.FUrl, b.FDisplayName, b.FModuleID, b.FFuncName, a.FAuFlag, b.FRelPageUrl
FROM         FuncInRoles AS a INNER JOIN
FuncInfos AS b ON a.FFuncID = b.FFuncID INNER JOIN
Modules AS c ON c.FModuleID = b.FModuleID
WHERE     (a.FRoleID = @RoleId) AND (b.FModuleID = @FModuleID) AND (a.FSchoolID = @SchoolId)
 
  呵呵,格式化后不是很理想,不过要比原来的好很多,另外,这个东东只能格式化Select语句,毕竟只是一个查询设计器而已,不要报太高的期望。
希望对大家有帮助。
预告一下,过几天我将发布我开发的SQL Server 2005和VS 2008的插件,功能包括
  • 完整的SQL代码格式化
  • 数据库对象快速定位,查找
  • SQL代码区域折叠 #region...#endregion
  • 。。。。。
posted @ 2008-03-27 19:41  代码乱了  阅读(19201)  评论(19编辑  收藏  举报