代码之家  ›  专栏  ›  技术社区  ›  Marc

SQL Server:如何从存储过程中提取注释以进行部署

  •  2
  • Marc  · 技术社区  · 16 年前

    我们有很多存储过程,它们都包含很多注释。
    是否有一种方法可以从存储过程中提取注释进行部署,以便用户在使用SQLServerManagementStudio修改存储过程时看不到这些注释?

    注意:我们使用的是SQLServer2008。

    3 回复  |  直到 16 年前
        1
  •  4
  •   Wael Dalloul    16 年前

    您可以使用带加密选项:

    CREATE PROCEDURE dbo.foo 
    WITH ENCRYPTION 
    AS 
    BEGIN 
        SELECT 'foo' 
    --Try this just to make sure
    END
    

    在此之前,请确保将存储过程的逻辑保存在一个安全的地方,因为一旦保存了存储过程的代码,就无法轻松访问它。

    之后用户就不能使用了 企业经理 获取源代码,但这可以破解。。。

        2
  •  1
  •   ron    16 年前

    如果要使代码保持可见但删除注释,可能需要使用Management Studio编写所有存储过程的脚本,然后使用宏/文本编辑器(如UltraEdit)查找并删除所有注释,然后再次运行该脚本以重建所有无注释存储过程。

        3
  •  0
  •   NicVerAZ    13 年前

    应该有一种方法可以创建一个存储过程来删除--和下一个回车符之间以及/**/容器之间的所有文本,然后将create/alter脚本保存为其他内容,例如在QA数据库上。sp_execute_sql将被大量使用。