Другой общий случай, когда можно получить это исключение, включает в себя насмешливые классы во время модульного тестирования. Независимо от используемой насмешливой структуры, вы должны убедиться, что все соответствующие уровни иерархии классов должным образом высмеиваются. В частности, все свойства HttpContext
, на которые ссылается тестируемый код, должны быть изделены.
См. « Исключение NullReferenceException при проверке пользовательского AuthorizationAttribute » для несколько подробного примера.
В SQL Server Management Studio вы можете щелкнуть правой кнопкой мыши по базе данных, которую хотите реплицировать, и выбрать «База данных сценариев как», чтобы инструмент создавал соответствующий файл SQL для репликации этой базы данных на другом сервере. Вы можете повторить этот процесс для каждой таблицы, которую хотите создать, а затем объединить файлы в один файл SQL. Не забудьте добавить инструкцию using после создания базы данных, но до создания любой таблицы;)
Обновление 2018-06-18 В более поздних версиях SQL Server вы можете получить это в одном файле в SSMS.
Это запустит мастер где вы можете создать сценарий всей базы данных или просто частей. Кажется, что T-SQL не делает этого.
Хотя ответ Клейтона доставит вас туда (в конце концов), в SQL2005 / 2008 / R2 / 2012 у вас есть гораздо более простой вариант:
Щелкните правой кнопкой мыши по базе данных, выберите Tasks
, а затем Generate Scripts
, который запустит мастер скриптов. Это позволяет сгенерировать один скрипт, который может воссоздать полную базу данных, включая таблицу / индексы & amp; ограничения / хранимые процедуры / функции / пользователи / и т. д. Существует множество опций, которые вы можете настроить для настройки вывода, но большинство из них является самоочевидным.
Если вы довольны параметрами по умолчанию, вы можете выполнить всю работу за считанные секунды .
Если вы хотите воссоздать данные в базе данных (как серия INSERTS), я бы также рекомендовал SSMS Tools Pack (бесплатный для версии SQL 2008, платный для SQL 2012).
Отличное объяснение можно найти здесь: Сгенерировать скрипт в SQL Server Management Studio
Courtesy Ali Issa Вот что вам нужно сделать:
Если вы хотите создать скрипт, который просто генерирует таблицы (нет данные), вы можете пропустить расширенную часть инструкций!
Да, вы можете добавить столько операторов SQL в один скрипт, сколько пожелаете. Только одно замечание: порядок имеет значение. Вы не можете ВСТАВИТЬСЯ в таблицу, пока не СОЗДАЙТЕ ее; вы не можете установить внешний ключ до тех пор, пока не будет вставлен первичный ключ.
Не знаете, почему SSMS не учитывает порядок выполнения, но это просто не так. Это не проблема для небольших баз данных, но что, если ваша база данных имеет 200 объектов? В этом случае порядок выполнения имеет значение, потому что все это нелегко.
Для неупорядоченных скриптов, сгенерированных SSMS, вы можете перейти к
a) Выполнить скрипт (некоторые объекты будут вставлены в некоторые из них, будут некоторые ошибки)
b) Удалите все объекты из сценария, добавленного в базу данных
c) Вернитесь к a), пока все
Альтернативный вариант - использовать сторонний инструмент, такой как ApexSQL Script или любые другие инструменты, уже упомянутые в этом потоке (SSMS toolpack, Red Gate и другие).
Все они будут заботиться о зависимостях для вас и сэкономить вам еще больше времени.