pms1969
pms1969

Reputation: 3734

Pretty Printer for T-SQL?

I'm looking for a good T-SQL Pretty Printer so that all the code looks consistent between developers in our project. Preferably a free/open source one, but paid for isn't out of the realms of possibility as long as it's reasonably priced. Are there any particular industry leaders?

I'm not that fussed about what particular standard it uses, but the more configurable the better. That way we can have little style wars among the developers and have a bit of fun to boot. ;-)

I suppose I should add that Visual Studio and Management Studio integration would be considered favourably.

Upvotes: 16

Views: 9131

Answers (9)

oHo
oHo

Reputation: 54691

I had the same issue but I was looking for a command line tool. I have finally coded a Python script based on sqlparse that is a Python package mature (10+ years), still very active and aiming to parse and format SQL statements.

In post here my tiny Python script pretty_print_sql.py in case other users would be interested:

import argparse
import sqlparse

# Parse command line arguments
parser = argparse.ArgumentParser(prog="pretty_print_sql")
parser.add_argument("file", type=argparse.FileType("r"), nargs="+")
args = parser.parse_args()

# Pretty print input files
for file in args.file:
    print(sqlparse.format(file.read(), reindent=True, keyword_case='upper'))

To use it:

pretty_print_sql.py input.sql > pretty-output.sql

To install sqlparse using pip for personal usage:

python3 -m pip install sqlparse --user --upgrade

To install sqlparse using pipenv (within a project):

python3 -m pipenv install sqlparse

Upvotes: 2

Galwegian
Galwegian

Reputation: 42257

I have used SQLInform before for formatting code from different developers in a similar way. Works well. They now have a Notepad++ Plugin as well. enter image description here

Upvotes: 0

JDHnz
JDHnz

Reputation: 489

A free and open source alternative to the paid for options that everyone else has listed is Poor Man's T-SQL Formatter. It integrates nicely with SQL Server Management Studio. The options for configuring how the SQL is formatted are somewhat limited when compared to the other tools, but for the price it's hard to complain, and if you really want to change it, the source is available for you to tweak.

Upvotes: 10

Tomalak
Tomalak

Reputation: 338406

http://www.sqlinform.com/

The paid desktop version has a "Windows Hotkey" feature which can be used in Visual Studio.

Upvotes: 2

ercan
ercan

Reputation: 1706

Other than SQLinForm, Toad for SQL Server comes with an SQL formatter out of the box, among plenty of other advantages over management studio...

Upvotes: 0

James Wang
James Wang

Reputation: 483

SQL formatter add-on for Management Studio?

Here is the one(sql pretty printer add-inf for ssms) that we are using.

Upvotes: 2

SD.
SD.

Reputation: 27

I can vouch for the RedGate's products, including SQL Prompt. I use several of their tools, and their support is terrific.

Upvotes: 2

thecoop
thecoop

Reputation: 46168

SQL Prompt has a code formatter and SSMS + VS integration

Upvotes: 4

Imrul
Imrul

Reputation: 3516

Did Any one of You EMS SQL Manager for SQL Server.It's Good.

There are lots of SQL Server Managemnet Studio Alternatives

Upvotes: 0

Related Questions