Great Tools for Formatting T-SQL

I have a big rant I add to….well, to every single SQL session I give. That rant is on formatting code. You see, (I say,) you can’t even begin to understand or optimize a query if it’s not formatted…and by “formattted”, I mean breaking out query clauses onto different lines, indenting column lists, etc etc.

Along with this speech, I normally give out a few resources for easier code formatting – after all, no one wants to go through every stored procedure, view, and trigger and format it by hand. In order of preference (most favorite down), here are those tools:

  1. Red-gate’s SQL Prompt – CTRL-K-Y formats all the code in your query window in a single go, as long as it’s parsable (no syntax errors).  I cannot recommend this tool enough. It’s beautiful.
  2. Poor SQL Parser – This free online utility lets you copy-paste your code into and out of a window and format it. I haven’t yet downloaded the free version, but I’ll update you here when I do. Thanks to Brent Ozar for the link Friday (and thereby for the blog post inspiration)!
  3. SSMS ToolsPack – This won’t format the code (in its current version), but it changes all keywords to uppercase (e.g., select to SELECT). This is handier than you’d think.
  4. MS Word Macro – You can grow your own copy-and-paste-and-format utility with MS Word utilities, or you can use the SQL formatting macro code I supplied for you here.

Happy days,
Jen McCown
http://www.MidnightDBA.com/Jen

10 thoughts on “Great Tools for Formatting T-SQL

    1. Chris Waller

      I have been using SQL Complete for years and that it a solid tool with many other functions beside SQL formatting, but now there is also a free online tool powered by SQL Complete – SQL Formatter http://www.sql-format.com/ as for me, looks like a good option for those who wan’t to use a web app for beautifying their code and it allows downloading code directly from your computer, means no burdensome copy-paste needed.

  1. mattmc3

    Great info. I’m starring this in Google Reader. But, why would anyone need to SHOUTCASE their SQL anymore? Does it go the other direction too and lowercase it?

    1. Jen McCown Post author

      I very much like the all caps style of T-SQL (“SELECT colName FROM TableName WHERE…”). It’s a good aid to the eye in picking out different segments…

  2. Pingback: Weekly Link Post 209 « Rhonda Tipton's WebLog

Comments are closed.