2013-03-29 1 views
1

Я унаследовал базу данных SQL-сервера, которая не была хорошо отформатирована. (Некоторые консалтинговая компания пришла, чтобы сделать проект и ушел, не закончив его) основные вопросы, я с этой базой данных являются:Очистка базы данных

  • типы данных: много TinyInt и текстовых типов.
  • Таблицы не нормированы: некоторые из ключей являются именами вместо seq ids.
  • Много таблиц, которые я не уверен, что используются
  • много хранимых процедур, которые я не уверен, что используются
  • Нехорошо названных таблиц и хранимых проки

Я также унаследовал приложение asp.net, которое работает против этой базы данных.

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

Я хочу также упомянуть, что у меня установлены инструменты RedGate (если это помогает).

Спасибо

+0

Вы писали: «Таблицы не нормированы: некоторые из ключей - это имена вместо seq ids». Просто хочу указать, что нормализация не имеет ничего общего с использованием натуральных или суррогатных ключей. База данных вполне может быть нормализована и использовать имена для первичных и внешних ключей. – jpw

+0

Это довольно открытый конец и не очень подробная информация, чтобы получить хороший ответ, на мой взгляд. Вы можете использовать функцию «Найти недопустимые объекты» redgate и ее функцию «Smart Rename», чтобы увидеть, на что ссылаются. Но у вас также есть ссылки на эти ресурсы в вашем приложении .NET. Короче говоря, это будет медленный процесс фиксации вещей. Много ручной проверки и немного пробной версии (с умным переименованием!) И ошибки, чтобы узнать, как очистка в конечном итоге закончится. –

+0

jpw- Мне известно, что имена могут быть использованы для FK, я говорю, что если в таблице B есть столбцы (seqid, Description), в таблице A ссылка A.Description = B.Description. – curiousMo

ответ

0

Отъезд Sql Server Data Tools они позволяют создать проект из живой базы данных. Некоторые из вещей, которые вы можете сделать, - это щелчок правой кнопкой мыши «Найти использование» для таблиц, представлений и функций.

До тех пор, пока предыдущий разработчик использовал хранимые процедуры и представления, а не запросы напрямую, он должен найти ссылки на ваш проект таким образом, не убивая ваш проект.

Кроме того, для поиска хранимых процедур, которые не используются, введите некоторые основные записи в верхней части каждой хранимой процедуры в приложении, после X дней, те, которые не вошли в вашу таблицу, скорее всего, будут безопасными для удаления, иначе утомительный поиск через ваш код .NET найдет их.