我可以在 sql server 编辑器中创建区域吗(比如在 C# 中)#region
?#endregion
8 回答
不是真的,对不起!但...
添加begin
和end
.. 对begin
创建的区域进行评论,看起来像这样......虽然有点黑客!
否则,您只能展开和折叠,您无法指定应该展开和折叠的内容。并非没有第三方工具,例如SSMS Tools Pack。
(我是 SSMS 的SSMSBoost插件的开发者)
我们最近在我们的 SSMSBoost 插件中添加了对这种语法的支持。
--#region [Optional Name]
--#endregion
它还具有在打开脚本时自动“识别”区域的选项。
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
在 Sql Server Management Studio 中不是开箱即用的,但它是非常好的SSMS 工具包的一个功能
不,#region 在 T-SQL 语言中不存在。
您可以使用 begin-end 块进行代码折叠:
——我的地区 开始 -- 代码在这里 结尾
我不确定我是否会推荐使用它们,除非代码不能通过其他方式进行可接受的重构!
我使用了一种类似于 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 **/
我实际上更喜欢这种方式,因为我知道我的方式BEGIN
与END
这种方式相匹配。
另一种选择是
如果您的目的是分析您的查询,Notepad+ 为 Sql 提供了有用的自动包装器。