2016-05-05 2 views
3

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

В SQL Server Management Studio 2012 я пытаюсь запустить запрос, чтобы создать новую базу данных, но в конечном итоге клонировать старую базу данных, код, я использую это:

CREATE DATABASE SEC_SSG_INOUT; 
GO 

USE SEC_SSG_INOUT; 
GO 

база данных будет создаваться с правильным именем, но он содержит те же таблицы и хранимые процедуры, что и старая база данных SEC_SSG, но с пустыми данными.

Что здесь происходит?

+0

Существует множество методов клонирования БД. Всего 2 примера: 1) Резервное копирование - восстановление является самым простым. Сервер, на котором вы восстанавливаете, должен быть той же версии или новее. 2) Script DB, включая данные (возможно, в двух отдельных .sql). Этот метод позволяет отказаться от используемого сервера. –

+3

@AlexKudryashev - Они не спрашивают, как клонировать БД. Они спрашивают, почему «CREATE DATABASE» неожиданно появляется. –

+1

Извините. Ошибка чтения throu; ( –

ответ

5

Возможно, вы добавили эти объекты в ваш model database по ошибке в некоторый момент.

Это используется как шаблон для всех новых баз данных. Любые созданные там объекты будут присутствовать в новых базах данных CREATE -ed.

+0

Это не объясняет, почему создание инструкции не терпит неудачу в отношении «базы данных уже существует» –

+2

@YosiDahari - База данных еще не существует. Старый, упомянутый в вопросе, называется 'SEC_SSG'. создаем один под названием 'SEC_SSG_INOUT' –

+1

Yep .. Я вижу это сейчас. –