C # SQL Server Express резервное копирование и восстановление - PullRequest
3 голосов
/ 15 декабря 2011

В основном у меня есть программа Windows Form C #, которая использует базу данных SQL Server Express для хранения данных, введенных пользователями. Я хочу добавить для пользователя возможность создавать резервные копии своей базы данных, а затем загружать резервную копию или другую базу данных в базу данных программ.

Если бы кто-то мог указать мне правильное направление, как статья или учебник, это было бы здорово, потому что я зашел в тупик.

Спасибо

Ответы [ 3 ]

3 голосов
/ 15 декабря 2011

У вас есть несколько вариантов сделать это:

  1. На сервере напрямую позвоните BACKUP DATABASE , RESTORE DATABASE команды.

  2. Используйте SMO ( Объекты управления SQL Server ) для программного восстановления операций резервного копирования.(В частности, это образец )

  3. Используйте стороннюю утилиту / библиотеку.

1 голос
/ 15 декабря 2011

Вы можете посмотреть на это предложение:

http://codeasp.net/articles/sql-server/118/backup-your-database-using-an-sql-command-export-to-bak

0 голосов
/ 15 декабря 2011

Приятной особенностью SQL Server является то, что вы можете делать более или менее все с помощью SQL (T-SQL или его разновидности) - это хорошо, потому что это означает, что большинство вещей относительно легко сделать, не беспокоясь о(например) доступность SMO и далее достаточно общим способом.

Вторым приятным моментом является то, что если вы запустите команду в SQL Server Management Studio (версию которой можно загрузить для SQL Server Express) чаще всего (и, конечно, в случае резервного копирования и восстановления) будет предлагаться сохранить сценарий в файл вместо его выполнения.

Так что это будет просто для васиспользовать SQL Server Management Studio для определения структуры команд backu и resotre на основе SQL и оттуда интегрировать их в ваше приложение.

Однако существует «уловка» - сервер SQL будет сохранять только резервные копии в/ восстановление резервных копий с диска, который виден учетной записи компьютера и службы послеесли экземпляр SQL Server запущен, почти наверняка это не проблема, если ваше приложение работает на той же машине, что и пользователь, но, возможно, проблема, если это не так.

...