SQL PROMPT5.3.4.1的一些设置选项
SQL PROMPT5.3.4.1的一些设置选项
我使用的是5.3.4.1版本

sql prompt这个工具安装好之后就可以在SSMS里使用代码提示功能
园子里非常多的文章:例如SQLSERVER开发利器XXXXXX
http://www.cnblogs.com/VAllen/archive/2012/09/08/SQLPrompt.html
http://www.cnblogs.com/keepfool/archive/2012/05/27/2519839.html
不过大家都是只提供个软件下载、怎麽破解sql prompt还有简单的使用方法,但是具体怎样使用和设置真的没有
昨天本人无聊研究了一下SQL PROMPT的设置,发现也有一些学问
大家想想,当我们在网上或者同事丢给我们一个sql代码,我们会把代码粘贴到SSMS里面看呢,但是每个人写的代码风格不一样
从网上粘贴进来的代码会有行号这些,特别代码非常长的时候,格式化都不知道怎么格式化了,这个时候就需要sql prompt的代码格式化功能了
使用sql prompt的代码格式化功能很简单,选中你要格式化的代码或者你直接在查询窗口按右键-》formate sql,
那么你选中的那部分代码或者整个sql脚本都会自动formate,这样就方便自己观看了。
但是sql prompt默认的代码格式化格式可能不适合大部分人,其实sql prompt提供了代码格式化的选项设置让大家去设置,只需要几分钟
个人感觉这些设置才是精粹,代码提示功能只是一小部分而已,还有sql prompt实验室提供的创新功能
redgate公司真的厉害,一个简单sql prompt集成了这麽多功能,可能大家以为我帮redgate公司卖广告,不过我相信大部分人都是使用破解的吧 o(∩_∩)o
-----------------------------------------------------华丽的分割线-------------------------------------------------------
说一下菜单中的选项,基本上菜单选项我很少用到,因为里面全部功能对我本人没有用,或者对你们有用 呵呵
除了一个非常重要的选项:启用/禁用代码提示功能,SQL prompt共有两处地方可以设置启用/禁用代码提示功能的开关
一个是这里,另一个是“option”-》Main-》behavior第一个选项就见到啦


---------------------------------------------------华丽的分割线-------------------------------------------------------------
下面对option菜单里面的选项逐个简单介绍

-----------------------------------------------华丽的分割线--------------------------------------------------------------
首先是Main->behavior 软件行为


输入对象之后马上显示对象的定义




其实大家可以按照我的设置去设置,一般我用到的基本上都是大家用到的
------------------------------------------------华丽的分割线------------------------------------------------------------------
Suggestions->types of suggestion 输入和代码提示建议

解密已经加密了的对象还真的有用,比如我加密了一个存储过程,那么我想看这个存储过程是怎麽写的,使用下面sql语句是看不出的
1 USE [pratice]2 GO3 EXEC [sys].[sp_helptext] @objname = N'dbo.creat_test_Encryption'
1 对象 'dbo.creat_test_Encryption' 的文本已加密。


Suggestions->join conditions 连接条件

这个表连接的代码提示设置,可以根据你输入的是数据类型还是列名来进行提示,非常方便
例如我输入的是数据类型,他就会弹出在这个表里符号你输入的数据类型的字段
比如我输入datetime类型

输入列名
1 USE [GPOSDB]2 GO3 SELECT * FROM [dbo].[CT_FuelingData] AS a INNER JOIN [dbo].[CT_InhouseCard] AS b ON a.[VC_FD_Cardno]=b.[VC_IC_CardNO]


-----------------------------------------------------华丽的分割线---------------------------------------------------------
Inserted Code->Objects&statements 对象和语句

Inserted Code->Qualification 限定名

像我在图片中说到那样,不知道为什么你输入表名. ,代码提示还是会显示出具有相同列名的表出来

Inserted Code->Aliases 别名

Inserted Code->Special characters 特殊符号

-----------------------------------------------------华丽的分割线------------------------------------------------------------------------
到代码格式化了!!
注意,在Formate这个选项下面的所有设置,都要在查询编辑器里选中需要格式化的代码 然后右键-》formate sql 才看到效果的,
不是你输入代码之后sqlprompt马上会自动帮你formate,是手动的喔。

Formate->Styles 风格

这里Styles应该是给你看的,反正我是编辑不了,可以导出XML格式的style文件,但是我也不知道怎么编辑,抱歉抱歉
大家E文比较好的话可以看redgate的官方网站解释,但是我看了里面好像没有说到怎麽编辑,太杯具了~
网站链接:https://documentation.red-gate.com/display/SP53/Options+for+formatting+your+code
导出的style文件
1 <?xml version="1.0" encoding="utf-16" standalone="yes"?> 2 <!----> 3 <LayoutOptions version="1" type="LayoutOptions"> 4 <ReservedWordsCasing>1</ReservedWordsCasing> 5 <BuiltInFunctionCasing>1</BuiltInFunctionCasing> 6 <BuiltInDataTypeCasing>1</BuiltInDataTypeCasing> 7 <DelimitIdentifiers>False</DelimitIdentifiers> 8 <IndentationAmount>4</IndentationAmount> 9 <UseTabs>False</UseTabs>10 <ReformatExpressions>True</ReformatExpressions>11 <FirstColumnOnNewLine>False</FirstColumnOnNewLine>12 <CommasAtStart>False</CommasAtStart>13 <MultilineSpacesAfterCommas>False</MultilineSpacesAfterCommas>14 <MultilineSpacesBeforeCommas>True</MultilineSpacesBeforeCommas>15 <MultilineAlignCommasWithStatement>True</MultilineAlignCommasWithStatement>16 <OperatorsOnNewline>True</OperatorsOnNewline>17 <OperatorsAtStart>True</OperatorsAtStart>18 <IndentBeginToken>True</IndentBeginToken>19 <IndentWithExpressionBrackets>True</IndentWithExpressionBrackets>20 <IndentWithParameterBrackets>True</IndentWithParameterBrackets>21 <IndentWithQueryBrackets>True</IndentWithQueryBrackets>22 <CloseBracketsOnNewLine>True</CloseBracketsOnNewLine>23 <OpenBracketsOnNewLine>False</OpenBracketsOnNewLine>24 <Wrap>True</Wrap>25 <WrapWidth>78</WrapWidth>26 <ShortLength>15</ShortLength>27 <CreateBracketsAtStartOfLines>False</CreateBracketsAtStartOfLines>28 <ParameterBracketOnNewline>True</ParameterBracketOnNewline>29 <CloseParameterBracketsOnNewLine>True</CloseParameterBracketsOnNewLine>30 <CompactShortStatements>False</CompactShortStatements>31 <SinglelineSpacesAfterCommas>True</SinglelineSpacesAfterCommas>32 <SinglelineSpacesBeforeCommas>False</SinglelineSpacesBeforeCommas>33 <SpacesAroundOperators>True</SpacesAroundOperators>34 <SpacesAroundComparisons>True</SpacesAroundComparisons>35 <FirstParameterDefinitionOnNewLine>True</FirstParameterDefinitionOnNewLine>36 <SpacesAfterBrackets>True</SpacesAfterBrackets>37 <LayoutSelectStatements>True</LayoutSelectStatements>38 <LayoutCreateStatements>True</LayoutCreateStatements>39 <QueryNewlineAfterOpenBracket>False</QueryNewlineAfterOpenBracket>40 <QueryNewlineBeforeCloseBracket>True</QueryNewlineBeforeCloseBracket>41 <JoinConditionsOnNewline>False</JoinConditionsOnNewline>42 <AlignConditionsWithJoins>False</AlignConditionsWithJoins>43 <AlignJoinsWithFrom>False</AlignJoinsWithFrom>44 <IndentByKeywordWidth>False</IndentByKeywordWidth>45 <ColumnsOnSingleLine>False</ColumnsOnSingleLine>46 <DoNotIndentProcedureContents>False</DoNotIndentProcedureContents>47 <ExecuteParametersOnSingleLine>True</ExecuteParametersOnSingleLine>48 <UseSpacesInsteadOfTabs>False</UseSpacesInsteadOfTabs>49 <IndentSelectSubclauses>False</IndentSelectSubclauses>50 </LayoutOptions>
Formate->Case 大小写

Formate->Schema statements 结构语句

Formate->Data statements 数据语句

Formate->Expressions 表达式

Formate->Commas&parentheses 逗号和双引号

Formate->Tabs&wrapping 自动换行和tabs键缩进量

经过以上设置,我用formate sql功能格式化了一下今天同事给我的一个sql脚本,还算比较舒服的格式化了之后
1 /* 2 @StartDate 3 @EndDate 4 */ 5 ALTER PROCEDURE [dbo].[CT_FuelingData_ICCardGatherReport] 6 ( 7 @StartDate VARCHAR(50) , 8 @EndDate VARCHAR(50) 9 )10 AS 11 BEGIN12 DECLARE @i INT13 DECLARE @totalcount INT14 DECLARE @tmpOilTypeName VARCHAR(50)15 DECLARE @tmpInAmount DECIMAL16 DECLARE @tmpOutAmount DECIMAL17 TRUNCATE TABLE Rep_ICFueling18 CREATE TABLE #TmpOilTypeName19 (20 IndexId INT IDENTITY(1, 1)21 NOT NULL ,22 VC_OT_OilTypeName VARCHAR(50)23 )24 INSERT INTO #TmpOilTypeName ( VC_OT_OilTypeName )25 SELECT VC_OT_OilTypeName26 FROM DP_OilType27 ORDER BY VC_OT_OilTypeName ASC28 SET @totalcount = @@rowcount29 SET @i = 130 WHILE ( @i <= @totalcount ) 31 BEGIN32 SET @tmpInAmount = NULL33 SET @tmpOutAmount = NULL34 SELECT @tmpOilTypeName = VC_OT_OilTypeName35 FROM #TmpOilTypeName36 WHERE IndexId = @i37 SELECT @tmpInAmount = SUM(ISNULL(a.DE_FD_Amount, 0))38 FROM CT_FuelingData a ,39 CT_OuterCard b40 WHERE ( a.I_FD_TypeCode <> 1 ) AND ( a.I_FD_TypeCode <> 5 ) AND ( b.VC_OC_Company = '' ) AND ( D_FD_DateTime BETWEEN @StartDate AND @EndDate ) AND a.VC_FD_Cardno = b.VC_OC_Cardno AND a.VC_FD_OilType = @tmpOilTypeName41 GROUP BY a.VC_FD_OilType42 SELECT @tmpOutAmount = SUM(ISNULL(a.DE_FD_Amount, 0))43 FROM CT_FuelingData a ,44 CT_OuterCard b45 WHERE ( a.I_FD_TypeCode <> 1 ) AND ( a.I_FD_TypeCode <> 5 ) AND ( b.VC_OC_Company <> '' ) AND ( D_FD_DateTime BETWEEN @StartDate AND @EndDate ) AND a.VC_FD_Cardno = b.VC_OC_Cardno AND a.VC_FD_OilType = @tmpOilTypeName46 GROUP BY a.VC_FD_OilType47 INSERT INTO Rep_ICFueling ( OilTypeStr, InAmount, OutAmount )48 VALUES ( @tmpOilTypeName, ISNULL(@tmpInAmount, 0),49 ISNULL(@tmpOutAmount, 0) ) 50 SET @i = @i + 151 END52 53 SELECT *54 FROM Rep_ICFueling55 --select * from #TmpOilTypeName56 DROP TABLE #TmpOilTypeName57 END
----------------------------------------------------华丽的分割线--------------------------------------------------------------
至此,sql prompt的格式设置完了,大家可以格式化一下你们的代码试一下符合自己的要求不
最后说一下实验室里的一个自动刷新功能,这个自动刷新功能对于多人修改同一个数据库脚本,例如同一个存储过程,函数
是很有用的。应该大家都有用版本管理软件吧,例如:Visual SourceSafe 就可以管理sqlserver数据库里的一个库里的所有sql脚本
不多说了,看一下这个刷新功能,先启用这个功能啦第一步

然后在SSMS里新建两个查询窗口,第一个查询窗口在tempdb数据库里新建一个表,然后在第二个查询窗口就可以马上看到新建的表



转摘:http://www.th7.cn/db/mssql/201305/30182.shtml
SQL PROMPT5.3.4.1的一些设置选项的更多相关文章
- [SQL]SQL Prompt5的工具栏按钮介绍
这是SQL Prompt5的工具栏按钮 Refresh Suggestions 刷新提示(数据库更改表结构后,需要刷新一下) Format SQL 格式化代码(Pro版本才能启用,可定制,所有前边带红 ...
- 14.3.3 Locks Set by Different SQL Statements in InnoDB 不同的SQL语句在InnoDB里的锁设置
14.3.3 Locks Set by Different SQL Statements in InnoDB 不同的SQL语句在InnoDB里的锁设置 locking read, 一个UPDATE,或 ...
- SQL Prompt5 破解版+使用说明 [转]
SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关.在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版 ...
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连
在建立与服务器的连接时出错.在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连 sql server服务器sqlserver远程连接数据库防火墙在建立 ...
- ecshop后台增加|添加商店设置选项和使用方法详解
有时候我们想在Ecshop后台做个设置.radio.checkbox 等等来控制页面的显示,看看Ecshop的设计,用到了shop_config这个商店设置功能 Ecshop后台增加|添加商店设置选项 ...
- Highcharts使用教程(2):设置选项
Highcharts使用教程(2):设置选项 使用教程 | 作者:走猫步的鱼 | 2013-12-11 09:33:25 | 阅读 16次 评论 1 概述:JavaScript图表工具Highchar ...
- ComboBoxEdit设置选项值(单选 多选)
网上搜索的 例子 加 自己的 一点点补充 lookupedit 设置选项值: private void LookUpEditFormTest_Load(object sender, EventArgs ...
- SOAP 格式设置选项
SOAP 格式设置选项 两个格式设置选项为: Style:适用于 SOAP 消息中 Body 元素的子元素(也可能是孙级).此选项指定为 binding WSDL 元素(通常情况下)或 operati ...
- vsftp的设置选项
设置匿名用户上传的文件的权限: anon_umask= 匿名用户新增文件的umask 数值.默认值为077. VSFTPD的设置选项 VSFTPD的配置文件/etc/vsftpd/vsftp ...
随机推荐
- 关于SQLSERVER去掉如何重复值的记录
这个一个在日常工作中所遇到的问题 在此记录一下 dt_user_pay_record表 ID userid time money 1 2 2014-3-2 2 2 2 2015-3-2 33 3 2 ...
- C++ STL中的常用容器浅谈
STL是C/C++开发中一个非常重要的模板,而其中定义的各种容器也是非常方便我们大家使用.下面,我们就浅谈某些常用的容器.这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中 ...
- 【转】zookeeper 的监控工具
公司很多产品会使用zookeeper,比如Meta消息中间件,在测试的过程中,我们经常需要查询zookeeper里面的信息来精确定位问题.目前项目中有开发团队自己写的浏览器node-z ...
- PipedInputStream/PipedOutputStream原理
PipedInputStream类与PipedOutputStream类用于在应用程序中创建管道通信.一个PipedInputStream实例对象必须和一个PipedOutputStream实例对象进 ...
- 页面按F5重复提交数据解决方法
在Web开发中,必须面对的问题就是表单的重复提交问题(这里仅指F5刷新造成的重复提交),.NET中处理这个问题似乎没有什么好的方法. 在网上搜索得到的解决方法主要有两种,一种是直接让表单按钮失效,从而 ...
- Broadcast详解
今天闲来无事,研究了下Android的Broadcast,发现Broadcast在Android系统中担任着很艰巨的角色. Broadcast是Android的四大组件之一:Broadcast分为普通 ...
- 解决VS2010批量替换时经常由于内存较低而导致VS2010自动关闭的问题
尊重原著作:本文转载自http://www.cnblogs.com/Sharping/p/3165527.html 情况描述 在使用VS2010 开发Web应用程序的时候,批量替换时经常卡死关闭. 一 ...
- Linux下安装McAfee防病毒软件(企业版本)
最近公司接一个项目虚拟化解决方案,不过所有硬件设备不是我们采购的,我们只是负责软体安装.我看了一下那个硬件设备那叫高,不过目前还到那边去安装,那边硬件还没安装完成,然后Boss给我拿来两台新服务器,让 ...
- js学习日记 (1)createDocumentFragment() ES6 => 箭头
只能说是会用和记载,深入理解还需时间. 有关性能优化: 使用createdocumentfragment()方法可以创建某个具有节点该有的所有属性的节点. 使用情况: 提取文档中的某个小部分,修改文 ...
- css selection改变文字反选的背景颜色
<style type="text/css"><!--.ai::-moz-selection { background:#cc0000; color:#fff; ...