我使用MS SQL Server 2012进行我的开发。我的数据库有很多存储过程。它每天都在改变一些需求。有时我必须在更改SP后逆转我的开发。所以我所做的是,在更改SP之前,我通常会进行备份(右键单击SP ->修改->并保存到我的本地硬盘位置)。这对我来说很头疼,因为每次我都必须这样做才能获得SP备份。
是否有办法将SP保存到本地硬盘位置?(使用命令提示符或任何其他方法)
考虑使用xp_cmdshell方法的sp_helptext。下面将存储过程的代码输出到文本文件。查看bcp实用程序的更多参数:
DECLARE @OutputFile NVARCHAR(100), @FilePath NVARCHAR(100) ,
@bcpCommand NVARCHAR(1000)
SET @bcpCommand = 'bcp "execute sp_helptext dbo.sp_name" queryout '
SET @FilePath = 'C:pathtofolder'
SET @OutputFile = 'FileName1.txt'
SET @bcpCommand = @bcpCommand + @FilePath + @OutputFile + ' -c -t, -T -S'+ @@servername
exec xp_cmdshell @bcpCommand
或者,使用编程语言(c#, VB, Java, Python, PHP)连接到数据库并执行sp_helptext
命令并将结果传递到文本文件中以备备份。
查看SQL Server数据库项目。您只需在Visual Studio IDE中进行更改,然后在满意时将其部署到目标数据库。不需要对源代码文件进行逆向工程。
此外,还可以导入现有的数据库