2010-01-04 5 views
2

У меня есть около 100 SQL представления, изменение этого:Обновить представление SQL Server 2005 с новым именем базы данных?

select * from RTC.dbo.MyTable 

... теперь я нахожу, что нужно изменить имя таблицы RTC к чему-то еще. Вместо того, чтобы редактировать одно представление за раз, есть ли способ записать все свои инструкции drop/create в текстовый файл, чтобы я мог выполнять глобальную замену?

ответ

3

В SSMS щелкните правой кнопкой мыши базу данных, выберите «Задачи» и выберите «Сгенерировать скрипты ...». Выберите «Просмотры», выберите виды, которые вы хотите экспортировать, экспортируете.

+0

Thanks Remus - Я отдам его. – larryq

3

Я бы использовал PowerShell. Если вы не используете клиентские инструменты SQL 2008, установите их. Затем запустите клиент PowerShell, добавьте зарегистрированные snapins (много информации о том, как это сделать), а затем используйте структуру каталогов, чтобы попасть в папку, представляющую ваши представления.

Затем сценарий их, используя что-то вроде:

Get-ChildItems | % {$ _. Script()}

Используйте ScriptOptions, чтобы сказать, чтобы он использовал скрипт Alter.

И заменить «RTC». с новым именем базы данных ... и запускать их с помощью sqlcmd.

PowerShell на самом деле становится действительно приятным вариантом развертывания.

+1

Это довольно хорошо –

+0

Звучит как определенный план (и дает мне повод, чтобы сойти с ума, чтобы узнать PowerShell). – larryq

Смежные вопросы