sql server #region

时间:2010-12-08 09:49:31

标签: sql-server region

我可以在sql server编辑器中创建区域(如C#中的#region#endregion)吗?

8 个答案:

答案 0 :(得分:234)

不是,抱歉!但...

添加beginend ..以及对begin的评论会创建看起来像这样的区域...... 有点破解! < / p>

screenshot of begin end region code

否则你只能展开和折叠你就不能决定应该扩展和折叠的内容。不是没有第三方工具,例如SSMS Tools Pack

答案 1 :(得分:9)

(我是SSMS SSMSBoost加载项的开发人员)

我们最近在SSMSBoost插件中添加了对此语法的支持。

--#region [Optional Name]
--#endregion

它还可以选择自动识别&#34;打开脚本时的区域。

答案 2 :(得分:8)

BEGIN ... END有效,你只需要添加一个注释部分。最简单的方法是添加节名称!另一种方法是添加注释块。见下文:

BEGIN  -- Section Name
/* 
Comment block some stuff  --end comment should be on next line
*/

 --Very long query
SELECT * FROM FOO
SELECT * FROM BAR
END

答案 3 :(得分:6)

在Sql Server Management Studio中没有开箱即用,但它是非常好的feature

SSMS Tools Pack

答案 4 :(得分:3)

只需在查询编辑器中使用文本缩进即可。

扩展视图

Expanded

折叠视图

Collapsed

答案 5 :(得分:2)

我使用了类似于McVitie的技术,并且只在很长的存储过程或脚本中使用。我会打破这样的某些功能部分:

BEGIN /** delete queries **/

DELETE FROM blah_blah

END /** delete queries **/

BEGIN /** update queries **/

UPDATE sometable SET something = 1

END /** update queries **/

这种方法在管理工作室中表现得相当不错,在查看代码时非常有用。折叠的部分看起来有点像:

BEGIN /** delete queries **/ ... /** delete queries **/

我实际上更喜欢这种方式,因为我知道我的BEGINEND这样匹配。

答案 6 :(得分:1)

另一种选择是

如果你的目的是分析你的查询,Notepad +有一个有用的Sql自动包装器。

答案 7 :(得分:0)

不,T-SQL语言中不存在#region。

您可以使用开始结束块进行代码折叠:

-- my region
begin
    -- code goes here
end

我不确定我是否建议使用它们,除非代码不能通过其他方式进行可接受的重构!