2010-01-04 80 views
2

我有大约100是这个变化的SQL视图:使用新数据库名更新SQL Server 2005视图?

select * from RTC.dbo.MyTable 

...现在我发现我需要将RTC表的名称更改为别的东西。不是一次编辑一个视图,是否有办法将所有的drop/create语句编写为文本文件,以便我可以进行全局替换?

回答

3

在SSMS中右键单击数据库,转到任务并选择'生成脚本...'。选择'视图',选择你想要导出的视图,导出。

+0

感谢雷木思 - 我会给它一个去。 – larryq 2010-01-06 06:36:35

3

我会使用PowerShell。如果您未使用SQL 2008客户端工具,请安装它们。然后获取PowerShell客户端,添加注册的管理单元(有关如何执行此操作的大量信息),然后使用目录结构转到代表视图的文件夹。

然后脚本使用的东西和他们一样:

GET-ChildItems | %{$ _。Script()}

使用ScriptOptions来告诉它使用Alter脚本。

并替换“RTC”。与新的数据库名称...并使用sqlcmd运行它们。

PowerShell实际上也成为一个非常好的部署选项。

+1

这是相当不错的 – 2010-01-05 00:55:35

+0

听起来像一个明确的计划(并给我一个借口,让我的后方学习PowerShell)。 – larryq 2010-01-06 06:36:05