Не легко, хотя я могу сделать два способа:
- Напишите серию хранимых процедур, которые идентифицируют все столбцы varchar и text всех таблиц, и сгенерируйте отдельные операторы обновления для каждого столбца каждой таблицы в форме "UPDATE foo SET BAR = REPLACE (BAR, 'foobar', 'quux «)». Вероятно, это будет связано с большим количеством запросов к системным таблицам, с большим количеством экспериментов - Microsoft не старается изо всех сил документировать это.
- Экспортируйте всю базу данных в один текстовый файл, выполните поиск / замену для этого, а затем повторно импортируйте всю базу данных. Учитывая, что вы используете MS SQL Server, на самом деле это более простой подход. Microsoft создала Мастер публикации баз данных Microsoft SQL Server по другим причинам, но он делает прекрасный инструмент для экспорта всех таблиц базы данных SQL Server в виде текстового файла, содержащего чистый SQL DDL и DML. Запустите инструмент, чтобы экспортировать все таблицы для базы данных, отредактируйте полученный файл, как вам нужно, и затем верните файл обратно в
sqlcmd
, чтобы воссоздать базу данных.
Если бы у меня был выбор, я бы использовал второй метод, если DPW работает с вашей версией SQL Server. В последний раз, когда я использовал этот инструмент, он отвечал моим потребностям (MS SQL Server 2000/2005), но у него были некоторые особенности при работе с ролями базы данных.