SQL Pretty Printer-不错的SQL格式化工具
前言
好长时间没有写过博客了,人变懒了很多,应该说本来也不怎么勤快。但今天为了这个工具,必须得勤快一下了,天下真的没有免费的午餐。
之前使用过sql server 2000的查询设计器和Toad for oracle 都有格式化Sql语句的功能,感觉很方便,尤其对于我这种有着轻微强迫症的人来说。当最近把SQL Server Management Studio(SSMS)升级到2008 R2版本时,没有格式化的功能,之前的2005和2008也都没有,咱就不知道微软是咋想的了。所以就想找一个在SSMS中能格式化代码的插件,搜来搜去就搜到了很多人推荐的SQL Pretty Printer神器,然后过来下载测试了,使用结果挺满意地,下面就说说SQL Pretty Printer Add-In for SSMS的使用吧。
内容
1、首先下载安装程序,下载地址在这里,下载完成之后直接安装就可以了,没有什么要说的。
2、安装完成之后重新打开SSMS,就会看到如下图:

3、Format Selected SQL
这个功能主要是格式化当前窗口中选择的SQL语句,只有先选择要格式化的SQL语句才能使用该功能。
4、Fromat All SQL
这个功能主要是格式化当前窗口中所有的SQL语句。
5、效果:
格式化之前

格式化之后

6、Rename Table 和 Rename Column
这两个功能是3.2.0新增加的,主要用于在复杂的SQL语句(包括嵌套子查询、连接、函数调用的参数,存储过程中的参数),重命名表名和列名。下面看一个示例大概就明白啥意思了,我的理解就是类似于使用正则表达式匹配,然后替换其中的表名和列名。
使用下面的SQL语句做测试:
SELECT person.firstname,
Orders.NAME
FROM person
LEFT JOIN Orders
ON person.P_Id = Orders.P_Id
ORDER BY person.firstname


替换之后的SQL语句,表名没有变,只有列名变化,这个功能倒是挺有用的,遇到要修改不同表的相同的列名情况下,挺适合的。

7、To C#(To VB.NET)
将SQL语句转换成C#语言中的输出语句。还是使用上面的SQL语句,在SSMS中选中要转换的SQL语句,然后选择To C#,将会看到如下转换后的C#代码,生成一个SQL语句的字符串,可以减少在代码中写拼SQL语句的麻烦:
StringBuilder varname1 = new StringBuilder();
varname1.Append("SELECT Persons.firstName, \n");
varname1.Append(" Orders.NAME \n");
varname1.Append("FROM Persons \n");
varname1.Append(" LEFT JOIN Orders \n");
varname1.Append(" ON Persons.P_Id = Orders.P_Id \n");
varname1.Append("ORDER BY Persons.firstName ");
8、C# To SQL (VB.NET To SQL)
将C#代码翻译成SQL语句,C#代码好像只要满足varname1.Append("SQL语句");就能转换成对应的SQL语句了,在他们网站上找半天没有找到相关说明的文档,测试的话已经限制使用了,好苦逼啊
9、SQL Formatter Options
这个就是格式化的选项了,打开如下图所示,具体的功能就不介绍了,我也没有仔细看,用默认设置应该就够用了。

此文纯属个人对这个软件的一些理解,有啥不正确的地方,还请斧正!
参考
SQL REFACTOR: RENAME COLUMN AND TABLE
SQL Pretty Printer format SQL on the fly | Gudu Software
SQL Pretty Printer-不错的SQL格式化工具的更多相关文章
- SQL Pretty Printer不错的sql格式化工具
之前使用过sql server 2000的查询设计器和Toad for oracle 都有格式化Sql语句的功能,感觉很方便,尤其对于我这种有着轻微强迫症的人来说.当最近把SQL Server Man ...
- SQL Pretty Printer for SSMS 很不错的SQL格式化插件
写SQL语句或者脚本时,看到凌乱的格式就头大了,于是决心找一款SQL语句格式化的工具. 功夫不负有心人还真的被我找到一款很好用,很方便的SQL Server插件:SQL Pretty Printer ...
- 【转】SQL Pretty Printer for SSMS 很不错的SQL格式化插件
源地址:https://www.cnblogs.com/leospace/archive/2012/09/04/SQL_Pretty_Printer_for_SSMS.html 写SQL语句或者脚本时 ...
- SQL格式化插件—SQL Pretty Printer
在SQL Server中我们经常需要编写各种SQL脚本,例如存储过程和函数等,由于在编写过程中,经常会进行调整,格式很乱,可读性很差.对于有强迫症的人来说,看这样的代码非常痛苦,必须要手动对代码进行格 ...
- SQL Pretty Printer for SSMS 很棒的格式化插件
SQL Pretty Printer for SSMS 很不错的SQL格式化插件 写SQL语句或者脚本时,看到凌乱的格式就头大了,于是决心找一款SQL语句格式化的工具. 功夫不负有心人还真的被我找 ...
- SQL Tuning 基础概述08 - SQL Tuning Advisor
SQL调优顾问 SQL Tuning Advisor的使用案例: 1.构建测试表T 2.定义调整任务 3.修改调整任务参数 4.执行调整任务 5.监控调整任务 6.查看调整任务建议 7.删除调整任务 ...
- 【转】使用SQL Tuning Advisor STA优化SQL
SQL优化器(SQL Tuning Advisor STA)是Oracle10g中推出的帮助DBA优化工具,它的特点是简单.智能,DBA值需要调用函数就可以给出一个性能很差的语句的优化结果.下面介绍一 ...
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
在Oracle10g之前,优化SQL是个比较费力的技术活,不停的分析执行计划,加hint,分析统计信息等等.在10g中,Oracle推出了自己的SQL优化辅助工具: SQL优化器(SQL Tuning ...
- SQL Server恢复软件SysTools SQL Recovery/SysTools SQL Server Recovery Manager
SQL Server恢复软件SysTools SQL Recovery/SysTools SQL Server Recovery Manager http://www.systoolsgroup.co ...
随机推荐
- Git学习笔记(8)——标签管理
本文主要记录的Git标签的作用.标签的多种创建方式,以及标签的删除,与推送,和使用GitHub的Fork参与别人的项目. 标签的作用 发布版本时,通常先在版本库中打一个标签,这样,就唯一确定了打标签时 ...
- redis常用命令、常见错误、配置技巧等分享
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/117.html?1455860236 1. redis查看当前所有的key ...
- Java-类和对象基础练习
1.创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它. package liu0919; public class Sanjiao { public double z(double a ...
- Flume日志采集系统——初体验(Logstash对比版)
这两天看了一下Flume的开发文档,并且体验了下Flume的使用. 本文就从如下的几个方面讲述下我的使用心得: 初体验--与Logstash的对比 安装部署 启动教程 参数与实例分析 Flume初体验 ...
- [Maven]Eclipse插件之Maven配置及问题解析.
前言:今天在自己环境装了Maven环境, 并且安装了Eclipse插件, 在查找插件过程中确实遇到一些问题, 好不容易找到一个 却又有问题.装好了插件之后, 用Eclipse创建Maven项目却出现 ...
- iOS-数据持久化-对象归档
一.简单说明 对象归档是将对象归档以文件的形式保存到磁盘中(也称为序列化,持久化),使用的时候读取该文件的保存路径读取文件的内容(也称为接档,反序列化), (对象归档的文件是保密的,在磁盘上无法查看文 ...
- BOM之window对象
双重角色 BOM的核心对象是window,它表示浏览器的一个实例.在浏览器中,window对象有双重角色,它既是通过Javascript访问浏览器窗口的一个接口,又是ECMAScript规定的Glob ...
- PHP的学习--可变变量
可变变量 有时候使用可变变量名是很方便的.就是说,一个变量的变量名可以动态的设置和使用.一个普通的变量通过声明来设置,例如: <?php $a = 'hello'; ?> 一个可变变量获取 ...
- 网络通信之Socket与LocalSocket的比较
Socket与LocalSocket都可以实现网络通信,两个有什么区别呢? LocalSocket其通信方式与Socket差不多,只是LocalSocket没有跨越网络边界. 于是,思考到一个问题:a ...
- Python编码问题整理
认识常见编码 GB2312是中国规定的汉字编码,也可以说是简体中文的字符集编码 GBK 是 GB2312的扩展 ,除了兼容GB2312外,它还能显示繁体中文,还有日文的假名 cp936:中文本地系统是 ...