Я запускаю собственное приложение, запрограммированное в Visual Studio 2008, которое использует SQL Server 2008 в качестве серверной части. Помимо сервера мои пользователи потребовали возможность хранить данные в независимых файлах. Приведенные причины включают в себя:
- вдали от офиса или путешествия, иногда в другие страны
- у нас есть офисы в нескольких городах, в некоторых из которых нет сервера sql
- необходимость делать «неофициальные» копии данных, для резервного копирования, незавершенного производства, альтернативных сценариев, отправки по электронной почте в другие офисы и т. Д.
Как мне это реализовать? Идеальным решением с точки зрения удобства сопровождения была бы автономная база данных, не требующая дублирования или переписывания кода доступа к данным. Просто установите строку подключения и все готово.
Такое вообще возможно? Я предполагаю, что ближайший родственник - SSCE, но, насколько я понимаю, ему не хватает определенных функций, таких как представления, процессы и т. Д. Поэтому, если какой-либо код доступа к данным использует такие объекты, он не будет перенесен на автономную базу данных.
В настоящее время я использую MS Access в качестве своей автономной опции БД (так как это внутреннее, у всех пользователей будет Office). До сих пор мне удавалось сделать эту работу без особой суеты, но мне интересно, как долго Access и Sql Server по сути являются двумя разными животными.
Как уже упоминалось, в настоящее время программа находится на VS2008, но скоро я надеюсь перейти на VS2010 и начать использовать Entity Framework, если это поможет.
EDIT:
Из приведенных ниже двух ответов видно, что SSCE является стандартным выбором. Но это не идеальный дубликат, потому что, как уже упоминалось, в нем отсутствуют некоторые функции полноценного SS. Я понимаю, почему, поскольку такие функции, вероятно, не нужны для небольшой локальной базы данных. Но для приложения, чей уровень доступа к данным изначально был закодирован для Sql Server, кажется, что есть хотя бы возможность требовать альтернативного кода.
Установка SSExpress на компьютере каждого пользователя, вероятно, была бы способом сохранить функции SS, но это шаг, который я не решаюсь сделать, учитывая нашу настройку.