SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关。在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版不仅让人看起来赏心悦目,在和他人之间做交流时也省时
SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关。在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,香港虚拟主机,良好的排版不仅让人看起来赏心悦目,在和他人之间做交流时也省时省力,不会因为揉成一团的sql去询问Team Member:您能帮我解释一下这么一大段sql是做什么的吗?
虽然微软至SQL 2008以上的版本提供了SQL智能提示,但是它的反应实在是过于迟钝,等提示出来我们早就可以敲出一行语句了。而且它没有提供sql代码格式化的功能,咱们只能自己做手动格式化,手动格式化sql总是需要花费不少时间的。
一、sqldbx工具介绍在介绍SQL Prompt 5.1之前(官方最新版本已经是5.3了),先介绍另外一款sql工具sqldbx。
它也是一款拥有智能提示的sql编程工具,而且小巧灵活,支持多种类型的数据库(不仅仅是SQL Server)。唯一的缺点就是它不支持中文,数据表中查询到的中文在这款工具的结果集中显示都是乱码的。
总而言之,它也是一款能够提高sql编程效率的工具。
大家可以在CSDN上下载它:,也是破解版的。
现在开始本文的核心,SQL Prompt 5.1的破解环境。看到官网900$以上的价格,我望而却步,如果只是200$以内,我倒是愿意为这个软件付费,谁让它确实非常好用呢?
二、SQL Prompt 5.1 1. 下载SQL Prompt 5.1下载地址:
2. 安装SQL Prompt 5.11) 下载完成后,解压得到下面两项。Crack中的文件是破解文件。
2) 运行SQLPrompt.exe,一路Next直至安装完成。
SQL Prompt提供了三个功能,我们最关心的是SQL Prmopt 5.1——Write, edit and explore SQL effortlessly
3) 覆盖RedGate.SQLPrompt.SSMSUI.dll和RedGate.SQLPrompt.VSUI.dll文件
在覆盖这两个dll文件之前,请先做好备份。
4) 执行破解命令
也许您第一次运行Register.bat这个文件和我一样,弹出命令框一闪而过,你也不知道发生了什么,可以肯定的是没有破解成功,在打开SQL Server时会弹出SQL Prompt加载错误。
用记事本打开Register.bat文件,看到下面一串代码,很明显它是用来注册dll的(regasm是程序集注册工具)
%SYSTEMROOT%\Microsoft.net\Framework\v2.0.50727\regasm "%ProgramFiles%\Red Gate\SQL Prompt 5\RedGate.SQLPrompt.SSMSUI.dll"
既然自动注册不成功,那就手动注册吧。分别在命令行中执行下面两个命令(你用.NET Framework 4.0注册也是可以的):
cd C:\Windows\Microsoft.NET\Framework\v2.0.50727 regasm "D:\Program Files (x86)\Red Gate\SQL Prompt 5\RedGate.SQLPrompt.SSMSUI.dll"第二个命令取决于你SQL Prompt 5的安装路径。
注意:SQL Prompt也支持SQL Server 2005,我本人的环境是SQL Server 2008 R2。
1) 智能提示
SQL Prompt的智能提示非常灵敏,相比于2008 R2自带的要好得多。在输入关键字时,即使你输入的是小写,它会自动帮你转换为大写的(实际上所有的SQL关键字大写是一种更为规范的写法),不需要在写关键字和普通单词时来回地切换Caps Lock键。
2) sql代码格式化
格式化前:
CREATE DATABASE Test GO USE Test GO CREATE TABLE Employees ( Id INT IDENTITY PRIMARY KEY, EmployeeName NVARCHAR(100), EntryDate DATE ) GO CREATE TABLE Users ( Id INT IDENTITY PRIMARY KEY, UserName NVARCHAR(100), Gender CHAR(1), Birhdate DATETIME, EmployeeId int ) GO SELECT u.UserName, e.EmployeeName FROM dbo.Users u INNER JOIN dbo.Employees e ON e.Id = u.EmployeeId格式化后:
CREATE DATABASE Test GO USE Test GO CREATE TABLE Employees ( Id INT IDENTITY PRIMARY KEY , EmployeeName NVARCHAR(100) , EntryDate DATE ) GO CREATE TABLE Users ( Id INT IDENTITY PRIMARY KEY , UserName NVARCHAR(100) , Gender CHAR(1) , Birhdate DATETIME , EmployeeId INT ) GO SELECT u.UserName , e.EmployeeName FROM dbo.Users u INNER JOIN dbo.Employees e ON e.Id = u.EmployeeId如果你编写了大段的存储过程或试图,用SQL Prompt格式化可以节省我们不少时间。
4. 在SQL Server中使用Soruce Control