Переименование полей базы данных - PullRequest
0 голосов
/ 20 марта 2009

У меня есть база данных, в которой в главной таблице есть поле с первичным ключом с очень плохим именем, которое я хочу переименовать. На это поле первичного ключа ссылаются около 20 других таблиц и около 15 хранимых процедур.

Какой самый простой способ переименовать это поле везде, где на него есть ссылки в базе данных?

Ответы [ 2 ]

4 голосов
/ 20 марта 2009

Существуют инструменты рефакторинга базы данных для выполнения именно того типа операций, который вам требуется. Просто найдите в Google «инструменты рефакторинга базы данных» и выберите что-то, что будет работать с вашей конкретной базой данных. DB Deploy является примером такого инструмента http://dbdeploy.com/.

Если по какой-то причине вы хотели сделать это вручную, и вы не имели дело с огромной базой данных, я, вероятно, сделал бы текстовый экспорт базы данных (ddl и data) и затем занялся бы поиском и заменой.

edit: Кроме того, программное обеспечение Redgate (http://www.red -gate.com / ) очень высоко оценено, но стоит денег. Лично я думаю, что их продукты превосходны и стоят каждого цента, учитывая время, которое они могут сэкономить.

0 голосов
/ 20 марта 2009

Если бы это был я, я бы сделал это вручную, используя Managment Studio; Выберите базу данных и щелкните правой кнопкой мыши, чтобы получить Задачи -> Создать сценарии, и выберите все объекты в базе данных, чтобы экспортировать DDL в новое окно запроса или в редактор по вашему выбору, и используйте команду «Найти», чтобы найти каждый экземпляр где ключ существует, а затем внесите соответствующее изменение, используя Management Studio непосредственно в базу данных.

Убедитесь, что у вас есть резервная копия на всякий случай.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...