создать пустую базу данных из производственной базы данных программно - PullRequest
0 голосов
/ 03 ноября 2010

В целях тестирования программного обеспечения я хотел бы создать стерильный клон (со всеми данными, удаленными) из производственной базы данных. Таким образом, я могу каждый раз запускать свои модульные тесты на известном наборе записей. Я пытаюсь сделать это программно в самих модульных тестах, чтобы убедиться, что таблицы содержат именно те тестовые данные, которые мне нужны для функциональных тестов.

Я нашел следующую информацию , касающуюся создания базы данных Access в C #. Примечание: я знаю, что Access, вероятно, не лучшее решение, но оно достаточно хорошее!

Что я хотел бы знать, есть ли способ использования TableAdapters (возможно) для репликации схемы производственной базы данных (без каких-либо данных) в пустом файле базы данных Access?

Ответы [ 3 ]

4 голосов
/ 03 ноября 2010

Сделайте это:

  • создайте копию файла доступа;production -> test
  • подключиться к тестовой базе данных
  • перечислить все таблицы в базе данных
  • выполнить DELETE * FROM [table] для всех таблиц.запустить его несколько раз, если у вас есть зависимости FK, пока не возникнет ошибка - или TRUNCATE [table] как прокомментировано
  • compact база данных
0 голосов
/ 03 ноября 2010

У меня плохой опыт работы с Access в качестве производственной базы данных. Я не буду рекомендовать. Или используйте SQLite или Firebird.

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

Отредактировано **

Насколько велика база данных? Oracle Express Edition может помочь до 4 ГБ. Кроме того, будет легко клонировать из Oracle в Oracle.

0 голосов
/ 03 ноября 2010

У меня нет большого опыта работы с Access, но, как правило, для этой цели вы создадите скрипт CREATE.Большинство инструментов базы данных имеют функцию для создания такого скрипта.Такой сценарий в основном представляет собой набор операторов SQL, которые создают все объекты (например, базы данных, представления).

Поиск сценария CREATE и Access даст вам несколько начальных точек .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...