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

如何创建ALTER脚本而不是使用SMO(服务器管理对象)创建脚本

  •  4
  • hIpPy  · 技术社区  · 15 年前

    我用的是 Microsoft.SqlServer.Management.Smo

    如何获得存储过程的ALTER脚本,而不是为存储过程创建脚本?菜单中有设置/选项吗 ScriptingOptions

    5 回复  |  直到 15 年前
        1
  •  2
  •   Grim    13 年前
    1. 使用SMO c的常规脚本选项和工具#
    2. foreach (string line in script)
                  {
                      string l = line.Replace("CREATE FUNCTION", "ALTER FUNCTION");
                  }
      
        2
  •  2
  •   Steven Liekens    9 年前

    这个 StoredProcedure ALTER 声明。

    https://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.storedprocedure.scriptheader(v=sql.120).aspx

    用法

    var sprocHeader = sproc.ScriptHeader(forAlter: true);
    var sprocBody = sproc.TextBody;
    
        3
  •  1
  •   hIpPy    15 年前

    结束这个问题。

        4
  •  1
  •   Tim Stone    13 年前
        5
  •  0
  •   jcolebrand    13 年前

    我用这个来比较服务器。toSP是SP的textbody。如果“TO”服务器上没有,我就创建()否则,对于加载的StoredProcedure spT,它是Alter()

    If toSP = "" Then  ' Empty
        spT.Create()
    Else
        spT.Alter()
    End If