有没有办法在.sql脚本中创建区域?

问题描述 投票:0回答:3

我正在将大量预定义数据填充到表中(在我的部署后 SQL 脚本中) 有没有办法创建 C# 样式区域,以便我可以折叠插入块以提高可读性和完整性?

这是一个简短的示例(#region 被注释掉):

MERGE INTO [MYTable] AS Target
USING (VALUES
        --#region Measurement_Id = 1 'Flow' for all reasources
         ( 1,  1, 1, 45, NULL, NULL)
        ,( 2,  2, 1, 56, NULL, NULL)
        ,( 3,  3, 1, NULL, NULL, NULL)
        ,( 4,  4, 1, 67.5, 87, NULL)
        ,( 5,  5, 1, NULL, NULL, NULL)
        ,( 6,  6, 1, 54., NULL, 87)
        ,( 7,  7, 1, NULL, NULL, NULL)
        --#endregion

        --#region Measurement_Id = 2 'Disc' for all reasources 
         ( 1,  1, 2, NULL, NULL, NULL)
        ,( 2,  2, 2, NULL, NULL, NULL)
        ,( 3,  3, 2, NULL, NULL, NULL)
        ,( 4,  4, 2, NULL, NULL, NULL)
        ,( 5,  5, 2, NULL, NULL, NULL)
        --#region
                ...

         ) AS Source ([Measurement_Id],[Measurement_Nm],[Measurement_Cd],[Measurement_Desc],[IsActive_Ind]) 
        ON (Target.[Measurement_Id] = Source.[Measurement_Id])
sql-server
3个回答
3
投票

没有原生支持,但可以使用插件来实现。

我为 SSMS 开发了 SSMSBoost 插件 (www.ssmsboost.com) 并添加了

--#region [名称]

--#endregion

上一个版本(2.12)中的语法支持。还有一个选项可以自动解析打开的文件,以便立即显示区域。


2
投票

数据库 - 如何在 TSQL (SQL Server 2008) 中创建区域

“区域和调试部分

区域的行为方式与 Visual Studio 中的相同。您可以折叠它们并展开它们。调试部分是当您将脚本更改为发布配置时获得注释的部分。调试部分也是一个可折叠区域。如果您在调试模式下部署脚本并添加了调试部分,则在未安装 SSMS 工具包的情况下从 SSMS 运行时,该脚本将会失败。当然,您可以通过简单地搜索调试部分的开始和结束文本来自己评论这些部分”。


0
投票

--我的简单解决方案:

-IF 1=1 -- 您的评论在这里

开始 ... 结束

+IF 1=1 -- 您的评论在这里

© www.soinside.com 2019 - 2024. All rights reserved.