Как сохранить базу данных в отдельном (переносимом) файле SQL? - PullRequest
0 голосов
/ 11 января 2012

Я создаю приложение для некоторого пользователя для ведения записей в базе данных. Для этого мне придется написать SQL-запрос (C #) и создать базу данных, если она не существует, когда пользователь запускает / устанавливает приложение. Чтобы упростить процедуру создания и резервного копирования, я хочу создать отдельный файл для SQL Server, который будет использоваться для хранения данных. Этот файл будет включен в установочный пакет и скопирован в папку назначения для использования SQL Server.

Я видел, что мы можем создать такой файл, но никогда не использовал его таким образом. Можно ли выполнить работу, которую я пытаюсь сделать?

Ответы [ 3 ]

1 голос
/ 11 января 2012

Если вы хотите использовать SQL Server, вы можете использовать Compact Edition: http://msdn.microsoft.com/en-us/data/ff687142

Базы данных SQL Server CE хранятся в файлах .sdf (до 4 ГБ), которые могут поставляться с вашим приложением.Таким образом, если вы хотите подключиться к полной базе данных SQL Server позже, вы можете просто изменить строки подключения в конфигурации вашего приложения.

1 голос
/ 11 января 2012

Я думаю, что если каждое приложение имеет свою собственную базу данных, вы должны использовать или SqlCe или SqlLite

Они представляют собой автономный, безсерверный, транзакционный механизм баз данных SQL с нулевой конфигурацией.

Так что вам не нужно устанавливать sql express на каждый компьютер. Они используют подмножество tsql, и вы можете сделать почти то же самое, что sql server

Вы можете встроить файл в приложение со всей командой sql, чтобы создать базу данных, а затем выполнить ее при первом запуске приложения.

В любом случае вы можете распространять свое приложение с уже созданной и готовой к использованию базой данных: это всего лишь файл .sdf

Если вы думаете, что распространять свое приложение с помощью clickonce лучше, чем Sqlce, потому что clickonce распознает его формат файла и обрабатывает его во время обновлений приложения

0 голосов
/ 11 января 2012

Вы можете сделать резервную копию и затем восстановить ее http://www.dotnetspider.com/forum/162986-database-backup-restore-through-C.aspx

...