2012-02-24 7 views
0

Процесс сборки моего проекта базы данных SQL 2008 занимает 15 минут для 1 сборки. Мне нужно управлять примерно 50 хранимыми процедурами. Я создал проект базы данных и проект сервера.Понимание рабочего процесса базы данных SQL Database

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

Есть ли способ проверить хранимую процедуру, не пропустив 15-минутную сборку, а затем развернуть сценарий? Могу ли я строить только изменения вместо всего БД?

ответ

0

Я решил пойти с MSSCCI. Это простой пользовательский интерфейс, который подключается непосредственно к SSMS и ведет себя как Team Explorer именно так, что я искал. Getting started.

1

Прежде всего, вы должны посмотреть, почему ваши сборки занимают так много времени. Возможно, вам нужно больше памяти или что-то в этом роде.

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

+0

Я не уверен, как поможет развертывание в другой базе данных. 15-минутный процесс - это все предварительное развертывание, просто материал, который требуется для создания самого скрипта. AFAIK, из документов MSDN должен быть создан весь скрипт. Вы можете создавать частичные проекты, но они все еще возвращаются к основной БД и строят все это ... –

+0

Нет, это не создает весь скрипт. Развертывание создает сценарий изменений относительно цели развертывания. Развертывание базы данных песочницы, которая имеет достаточно данных для тестирования, даст вам базу данных, в которой можно проверить вашу хранимую процедуру. Я уже сказал, что вам нужно посмотреть, почему ваши сборки занимают так много времени - 15 минут - это долгое время. Сколько у вас объектов базы данных? –

+0

10 тысяч, вероятно, около 100 000. Я занимаюсь только 50-100 суммой этих предметов. Сборка происходит на моем devbox. Его новая коробка, выиграть 7, 8 ядер, x64, 8 ГБ оперативной памяти. Жесткий диск работает во время сборки # $ @. –

-1

Я никогда не пользовался визуальными студиями для «создания» и ведения баз данных. Это, я думаю, быстро станет неуправляемым, поскольку база данных начнет увеличиваться. И я предполагаю, что когда вы его «построите», он проверяет и развертывает все объекты в базе данных.

Я бы предположил, что вы не используете визуальные студии таким образом. Просто сохраните свой код sql самостоятельно. И храните их в системах управления версиями вручную. Таким образом, вы можете обновлять каждую сохраненную процедуру отдельно. Другими словами, храните каждый сохраненный proc как файл.

if object_id(<ProcName>) is not null 
    drop proc <ProcName> 
GO 

create proc <ProcName> 
... 
GO 

Затем сохраните это как ProcName.sql и передайте управление исходным кодом остальное. Извините, если это не полезно или я просто заявляю о очевидности.

+0

Вы второй программист, который сделал рекомендацию уровня файла. Мне, возможно, придется вернуться к svn. Моя забота заключается в том, что нужно больше тренировать команду. –

+0

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

+1

-1: Если вы не знаете о проектах базы данных, то почему вы отвечаете на вопрос? –