Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
2 мар 05, 15:40    [1356796]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
Скриптом. Делаете Script Database, меняете название БД в скрипте и запускаете
2 мар 05, 15:41    [1356801]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
Нет. Не скриптом.
Нужно средство, которое копирует объекты базы.
Может c помощью DTS ?
Как его делать ?
2 мар 05, 15:44    [1356817]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
Да, но не в режиме Design
2 мар 05, 15:47    [1356842]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
YuriAM
Нет. Не скриптом.
Нужно средство, которое копирует объекты базы.
Может c помощью DTS ?
Как его делать ?


Можно, выбираете Cope SQL Server Objects Task - а дальше все интуитивно понятно: выбрать все объекты, снять флаг "Copy Data".
2 мар 05, 15:47    [1356843]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
Утилита dtsrun вызывает на выпонение DTS Package.
Осталось создание пакета!
2 мар 05, 15:54    [1356880]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
Неужели средствами Transact SQL невозможно копировать объекты одной базы в другую ?
2 мар 05, 15:57    [1356891]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
YuriAM
Неужели средствами Transact SQL невозможно копировать объекты одной базы в другую ?

Таблицы можно через select into
ХП, функции и view через динамику с помощью sp_hleptext
2 мар 05, 15:59    [1356907]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
нет.
2 мар 05, 16:05    [1356940]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Crimean
Member

Откуда:
Сообщений: 13148
ftp://ftp.lime-systems.com/pub/Utils/XDBS/
2 мар 05, 16:07    [1356948]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3295
YuriAM
Неужели средствами Transact SQL невозможно копировать объекты одной базы в другую ?

Можно, конечно, но это будет такая гора динамического кода, что мало не покажется. Уж лучше DTS сделать, тем более что пишется он практ. одной мышкой.

Breakneck
Таблицы можно через select into

Если честно, сомневаюсь, что скопируются хотя бы дефолты. Не говоря уже о форейнах...
2 мар 05, 16:09    [1356954]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
А чем полный backup (и восстановление в пустую БД такую же туда, куда перенос) не нравится?
2 мар 05, 16:20    [1357022]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
Ennor Tiegael
Таблицы можно через select into

Если честно, сомневаюсь, что скопируются хотя бы дефолты. Не говоря уже о форейнах...


А я не говорил о таких объектах БД, как дефолты и констрейнты. Структура таблиц по полям скопируется, привязка ко всем прочим объектам потеряется.
2 мар 05, 16:28    [1357073]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
AlexandrPlus
А чем полный backup (и восстановление в пустую БД такую же туда, куда перенос) не нравится?

А полный бэкап также восстановит и данные.

А вообще, YuriAM, на мой взгляд, вы ищете способ обклеить обоями квартиру через замочную скважину. Может, все-таки дверь открыть лучше будет?
2 мар 05, 16:30    [1357084]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
Для создания пустой базы , когда исходная огромная, сделать backup это уж слишком
2 мар 05, 16:30    [1357090]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
У меня сейчас так и есть . Создаються таблицы, после Constraints, Keys, ...
Но неужели нет средства ?
2 мар 05, 16:32    [1357101]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
FAQ
2 мар 05, 16:33    [1357109]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Breakneck
Member

Откуда: Kiev
Сообщений: 2454
ух ты... век живи - век учись, FAQ-то я и не заметил :-)
2 мар 05, 16:40    [1357146]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
YuriAM
Member

Откуда:
Сообщений: 829
2Glory
Не так уж хорошо, из базы получить скрипт , после его запускать
2 мар 05, 16:52    [1357187]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
YuriAM
2Glory
Не так уж хорошо, из базы получить скрипт , после его запускать


Вам уже предлагали
- Вы можете сделать backup/restore и удалить все записи
- Вы можете использовать DTS без переноса данных
- Вы можете использовать SQLDMO (как это делает DTS)
2 мар 05, 17:00    [1357231]     Ответить | Цитировать Сообщить модератору
 Re: Как создать копию базы ( без данных ) ?  [new]
Crimean
Member

Откуда:
Сообщений: 13148
Ташишь утиль с фтп
Разворачиваешь в два разных каталога

Снимаешь образ нужной базы:
dbImage сервер база файл_структуры
dbCopy сервер база файл_объектов

Создаешь пустую базу. Делаешь:
dbImage пустой_сервер пустая_база пустая_структура
dbCopy пустой_сервер пустая_база пустые_объекты

Создаешь и применяешь разницу:

dbCompare файл_структуры пустая_структура новая_структура
dbProcess файл_объектов пустые_объекты новые_объекты

dbDeploy новая_структура пустой_сервер пустая_база
dbPaste новые_обекты пустой_сервер пустая_база

5 минут и все готово. В случае чего все протоколы есть, обработку можно сделать "у себя", забрав файло и т.д.
2 мар 05, 17:56    [1357559]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить