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' 的文本已加密。

但是使用sql prompt就可以看到存储过程的内容

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的一些设置选项的更多相关文章

  1. [SQL]SQL Prompt5的工具栏按钮介绍

    这是SQL Prompt5的工具栏按钮 Refresh Suggestions 刷新提示(数据库更改表结构后,需要刷新一下) Format SQL 格式化代码(Pro版本才能启用,可定制,所有前边带红 ...

  2. 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,或 ...

  3. SQL Prompt5 破解版+使用说明 [转]

    SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关.在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版 ...

  4. 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连

    在建立与服务器的连接时出错.在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连 sql server服务器sqlserver远程连接数据库防火墙在建立 ...

  5. ecshop后台增加|添加商店设置选项和使用方法详解

    有时候我们想在Ecshop后台做个设置.radio.checkbox 等等来控制页面的显示,看看Ecshop的设计,用到了shop_config这个商店设置功能 Ecshop后台增加|添加商店设置选项 ...

  6. Highcharts使用教程(2):设置选项

    Highcharts使用教程(2):设置选项 使用教程 | 作者:走猫步的鱼 | 2013-12-11 09:33:25 | 阅读 16次 评论 1 概述:JavaScript图表工具Highchar ...

  7. ComboBoxEdit设置选项值(单选 多选)

    网上搜索的 例子 加 自己的 一点点补充 lookupedit 设置选项值: private void LookUpEditFormTest_Load(object sender, EventArgs ...

  8. SOAP 格式设置选项

    SOAP 格式设置选项 两个格式设置选项为: Style:适用于 SOAP 消息中 Body 元素的子元素(也可能是孙级).此选项指定为 binding WSDL 元素(通常情况下)或 operati ...

  9. vsftp的设置选项

    设置匿名用户上传的文件的权限: anon_umask=  匿名用户新增文件的umask 数值.默认值为077.     VSFTPD的设置选项 VSFTPD的配置文件/etc/vsftpd/vsftp ...

随机推荐

  1. 关于SQLSERVER去掉如何重复值的记录

    这个一个在日常工作中所遇到的问题 在此记录一下 dt_user_pay_record表 ID userid time money 1 2 2014-3-2 2 2 2 2015-3-2 33 3 2 ...

  2. C++ STL中的常用容器浅谈

    STL是C/C++开发中一个非常重要的模板,而其中定义的各种容器也是非常方便我们大家使用.下面,我们就浅谈某些常用的容器.这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中 ...

  3. 【转】zookeeper 的监控工具

            公司很多产品会使用zookeeper,比如Meta消息中间件,在测试的过程中,我们经常需要查询zookeeper里面的信息来精确定位问题.目前项目中有开发团队自己写的浏览器node-z ...

  4. PipedInputStream/PipedOutputStream原理

    PipedInputStream类与PipedOutputStream类用于在应用程序中创建管道通信.一个PipedInputStream实例对象必须和一个PipedOutputStream实例对象进 ...

  5. 页面按F5重复提交数据解决方法

    在Web开发中,必须面对的问题就是表单的重复提交问题(这里仅指F5刷新造成的重复提交),.NET中处理这个问题似乎没有什么好的方法. 在网上搜索得到的解决方法主要有两种,一种是直接让表单按钮失效,从而 ...

  6. Broadcast详解

    今天闲来无事,研究了下Android的Broadcast,发现Broadcast在Android系统中担任着很艰巨的角色. Broadcast是Android的四大组件之一:Broadcast分为普通 ...

  7. 解决VS2010批量替换时经常由于内存较低而导致VS2010自动关闭的问题

    尊重原著作:本文转载自http://www.cnblogs.com/Sharping/p/3165527.html 情况描述 在使用VS2010 开发Web应用程序的时候,批量替换时经常卡死关闭. 一 ...

  8. Linux下安装McAfee防病毒软件(企业版本)

    最近公司接一个项目虚拟化解决方案,不过所有硬件设备不是我们采购的,我们只是负责软体安装.我看了一下那个硬件设备那叫高,不过目前还到那边去安装,那边硬件还没安装完成,然后Boss给我拿来两台新服务器,让 ...

  9. js学习日记 (1)createDocumentFragment() ES6 => 箭头

    只能说是会用和记载,深入理解还需时间. 有关性能优化: 使用createdocumentfragment()方法可以创建某个具有节点该有的所有属性的节点. 使用情况:  提取文档中的某个小部分,修改文 ...

  10. css selection改变文字反选的背景颜色

    <style type="text/css"><!--.ai::-moz-selection { background:#cc0000; color:#fff; ...