概述


    在平时的工作中,我会经常的碰到这样需要合并SQL脚本的问题。如,有很多的SQL脚本文件,需要按照一定的先后顺序,再生成一个合并SQL脚本文件,然后再发布到用户SQL Server服务器上。

    合并SQL脚本文件,最直接的方法就是新建1个空白的SQL脚本文件,再把需要合并的SQL脚本文件内容复制到新建的SQL文件中。当初,我合并脚本的操作方法与刚说的有类似。我在Microsoft SQL Server Management Studio(MSSMS)新建一个查询,再把要合并的SQL脚本文件,一个一个的打开,并复制内容到新建查询中,然后生成合并脚本文件。

    上面的方法,对于几个SQL脚本文件合并来说,似乎没什么问题。但是,当我们要合并的脚本很多,一文件一个文件的内容复制,是比较繁琐的事情,要是能有1个简单合并脚本工具就最好不过了。下面介绍我写的两个合并SQL脚本文件的存储过程.

 

第1个存储过程,只要调用sp_OACreate实现合并SQL脚本文件。


Go


调用上面存储过程前,需要确认启用 OLE Automation Procedures和xp_cmdshell 选项:
 
reconfigure
Go
测试:
-- nvarchar(1024)

 
 
sql

第2个是CLR存储过程,使用C#代码实现合并SQL脚本文件。


C#代码:

        }
}

}


存储过程代码:

Go

以上的CLR存储过程代码是在SQL Server 2005 & Microsoft Visual Studio 2005下运行通过。

 

相关文章: