SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关。在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版不仅让人看起来赏心悦目,在和他人之间做交流时也省时省力,不会因为揉成一团的sql去询问Team Member:您能帮我解释一下这么一大段sql是做什么的吗?
虽然微软至SQL 2008以上的版本提供了SQL智能提示,但是它的反应实在是过于迟钝,等提示出来我们早就可以敲出一行语句了。而且它没有提供sql代码格式化的功能,咱们只能自己做手动格式化,手动格式化sql总是需要花费不少时间的。
系统:win7 x64 SP1 + SQL 2008 R2
一、sqldbx工具介绍
在介绍SQL Prompt 5.3.4.1之前,先介绍另外一款sql工具sqldbx。
它也是一款拥有智能提示的sql编程工具,而且小巧灵活,支持多种类型的数据库(不仅仅是SQL Server)。唯一的缺点就是它不支持中文,数据表中查询到的中文在这款工具的结果集中显示都是乱码的。
总而言之,它也是一款能够提高sql编程效率的工具。
大家可以在CSDN上下载它:http://download.csdn.net/tag/sqldbx,也是破解版的。
现在开始本文的核心,SQL Prompt 5.3.4.1的破解环境。看到官网900$以上的价格,我望而却步,如果只是200$以内,我倒是愿意为这个软件付费,谁让它确实非常好用呢?
二、SQL Prompt 5.3.4.1
1. 下载SQL Prompt 5.3.4.1,是个压缩包,里面有三个文件
免登录免积分下载地址:http://download.csdn.net/detail/caizz520/4557385
1) 下载完成后,解压得到下面三项。一个是注册教程doc,一个是注册机keygen,一个是官方原版安装包V5.3.4.1。
2. 安装SQL Prompt 5.3.4.1
1) 运行SQLPrompt_5.3.4.1.exe,一路Next直至安装完成。
SQL Prompt提供了三个功能,我们最关心的是SQL Prmopt 5.3.4.1——Write, edit and explore SQL effortlessly
2) 打开SQL Server 2008 R2在工具栏点击SQL Prompt 5
3)打开SQL.Prompt.Keygen.5.3.exe并复制序列号到刚才的窗口
4)然后点击Activate,注意要先断网,等待一会会提示网络错误,然后点击Activate Manually(离线注册)
5)把代码复制到注册机中间的文本框内就会生成相应的代码
6)再把生成的代码复制到右边的文本框中,然后点击Finish
7)破解成功!!
3. 在SQL Server中用SQL Prompt辅助编写sql
注意:SQL Prompt也支持SQL Server 2005,我本人的环境是SQL Server 2008 R2。
1) 智能提示
SQL Prompt的智能提示非常灵敏,相比于2008 R2自带的要好得多。在输入关键字时,即使你输入的是小写,它会自动帮你转换为大写的(实际上所有的SQL关键字大写是一种更为规范的写法),不需要在写关键字和普通单词时来回地切换Caps Lock键。
除了代码智能提示,它还提供了表定义智能提示。也许你有一张很大的表,但是有些字段你无法记得清楚,你不必去SQL Server左侧的服务器资源管理器查看这张打表的结构。
2) sql代码格式化
格式化前:
1 CREATE DATABASE Test
2 GO
3 USE Test
4 GO
5
6 CREATE TABLE Employees
7 (
8 Id INT IDENTITY PRIMARY KEY,
9 EmployeeName NVARCHAR(100),
10 EntryDate DATE
11 )
12
13 GO
14
15 CREATE TABLE Users
16 (
17 Id INT IDENTITY PRIMARY KEY,
18 UserName NVARCHAR(100),
19 Gender CHAR(1),
20 Birhdate DATETIME,
21 EmployeeId int
22 )
23 GO
24
25
26 SELECT u.UserName, e.EmployeeName FROM dbo.Users u
27 INNER JOIN dbo.Employees e ON e.Id = u.EmployeeId
格式化后:
1 CREATE DATABASE Test
2 GO
3 USE Test
4 GO
5
6 CREATE TABLE Employees
7 (
8 Id INT IDENTITY
9 PRIMARY KEY ,
10 EmployeeName NVARCHAR(100) ,
11 EntryDate DATE
12 )
13
14 GO
15
16 CREATE TABLE Users
17 (
18 Id INT IDENTITY
19 PRIMARY KEY ,
20 UserName NVARCHAR(100) ,
21 Gender CHAR(1) ,
22 Birhdate DATETIME ,
23 EmployeeId INT
24 )
25 GO
26
27
28 SELECT u.UserName ,
29 e.EmployeeName
30 FROM dbo.Users u
31 INNER JOIN dbo.Employees e ON e.Id = u.EmployeeId
如果你编写了大段的存储过程或试图,用SQL Prompt格式化可以节省我们不少时间。
4. 在SQL Server中使用Soruce Control
SQL Prompt提供了数据库的版本控制器,我在尝试使用这个功能之后,不得不说这真是一个非常不错的功能。
数据库中的表、视图、存储过程、函数的添加和变更都可以通过它来管理,而不用在每次变更时都去填写一个Excel文档记录数据库变更点。
下面几幅图是一个简单的教程。
1) 点击Link database to source control
它提供了几种连接到Source Control的接口,这里我选择SVN作为数据库版本控制器。
2) 输入SVN地址和开发模式,开发模式我选择了多人共享模式
连接成功后会显示连接的地址和数据库
3) 更改数据库操作
当我更改了Users表的结构后,Users表会出现一个蓝色的小图标,表示表被变更了,可以做Commit操作。
在表的右键菜单中有Commit命令
现在开始提交它,它会提示你表结构做了哪些变更(我向Users表添加了Address列),点击右上角的Commit按钮提交
4) 查看历史记录
之前我对表已经做了更改,View History作为版本控制很重要的一个功能,现在来验证它是否对数据库起作用。
右键->Show History
前后版本有一个清晰地对比
5. 在Visual Studio中使用SQL Prompt
在官方网站上明确说明了SQL Prompt只能在Database Project或SQL Server Project中使用。
Using SQL Prompt with Visual Studio
SQL Prompt can be integrated with Visual Studio 2005, 2008 and 2010. SQL Prompt only works in Database projects and SQL Server projects.
我们在进行项目时,可以为项目创建一个配套的数据库项目来管理我们的表、视图、存储过程以及其他数据库脚本。
在一般的项目中我们是无法使用SQL Prompt的。
当我们创建了SQL Server Project或Database Project或者直接在Visual Studio 2010中打开SQL后缀名的脚本文件后,就可以使用它了。
该博文中http://www.cnblogs.com/keepfool/archive/2012/05/27/2519839.html关于VS2010不能使用SQL Prompt5的问题,在SQL Prompt5.3.4.1版本已经修复。无论是Windows7 x86还是x64都可以完美使用!!!
附截图: