Как полностью очистить базу?

Как полностью очистить базу MS SQL, оставив ее структуру и данные одного пользователя для входа?
Данный вопрос возник в связи с необходимостью передачи базы специалисту для удаленной работы.

Нравится

9 комментариев

Добрый день!
На данный момент эту задачу разработчики чаще всего решают путем написания SQL-скриптов очистки наполнения. Возможно, участники Community предложат варианты скрипта, но такое задание нетрудно выполнить и самостоятельно. Пример:

delete from tbl_Task
delete from tbl_Document
delete from tbl_Contact where Name <> 'Supervisor'
и т.д. в зависимости от Вашего наполнения.

Справочники очищать и, соответственно, "замусоривать" не рекомендуется, т.к. в системе существуют привязки к некоторым значениям.

Дмитрий,
delete from [tbl_Name] - это я знаю.
А как можно сразу, одним или двумя скриптами, очистить всю базу целиком, а не по одной таблице?
________________________________________
www.abs.com.kz
Агентство недвижимости АБС Royal Estate

Наверняка Вы понимаете под фразой "целиком" удаление лишь ненужного Вам наполнения. При этом подразумевается, что останутся записи в таблицах tbl_Contact (Supervisor), tbl_Account (Ваша компания), tbl_AdminUnit (Supervisor, Все пользователи), таблицы с отчетами, справочниками, лицензиями и т.д., то есть система в том виде, в каком она была на момент старта работы с ней.
Встроенных скриптов или средств очистки пользовательского наполнения, насколько мне известно, система внутри себя не содержит, обычно для этого разработчики сами пишут подходящие скрипты. В Вашем случае, возможно, будет быстрее решить задачу самостоятельно и впоследствии пользоваться полученным скриптом.

Дмитрий, в этом Вы правы.
Но в том то и дело, что самостоятельно решить задачу не могу, поэтому задал вопрос здесь. Нужна помощь.
______________
www.abs.com.kz
Агентство недвижимости АБС Royal Estate

Думаю, единственный вариант - обнулять связи и удалять данные с помощью запросов:

delete from tbl_Contact
where Name <> 'supervisor'
 
delete from tbl_Account
where Name <> 'Ваша компания'

...

Или же...развернуть пустую базу из резервной копии.

Если Вам нужно передать для удаленной работы "с нуля" - то Вы можете отправить дамп из установочного каталога Террасофт.
Но, насколько я понял, у Вас уже сделаны некоторые настройки конфигурации, и Вам надо отдать базу на доработку.
Так как никто из здесь присутствующих не знает, какие конкретно таблицы Вы добавили в рамках собственной настройки (новые справочники, новые разделы и детали), то и советы только общие - напишите скрипты для удаления из всех НЕ справочных таблиц, а также удаляйте из tbl_Contact и tbl_Account так, как написала Татьяна (чтобы осталась возможность подключения к базе. Кстати, возможно что у Вас администратор уже не Supervisor, и компания называется по-другому - это зависит от того, установлены ли лицензии).

Как вариант: в пустую базу перенести все сервисы из доработанной. Будьте внимательны с новыми значениями справочников.

"Татьяна Адамчук" написал:Или же...развернуть пустую базу из резервной копии.

может быть этот вариант лучше будет? подскажите, как это сделать :)
______________
www.abs.com.kz
Агентство недвижимости АБС Royal Estate

Вы можете написать запрос в Службу технической поддержки Terrasoft с просьбой предоставить чистую базу вашего продукта. Также вы можете получить чистый бэкап выполнив административную установку из дистрибутива. Бэкап будет находится в каталоге Terrsoft, в папке DB.

Показать все комментарии