У вас есть несколько вариантов. Во-первых, если это простая база данных, я рекомендую вам отказаться от использования SQL Express и использовать SQL Server Compact. База данных Compact SQL - это файл, который можно связать с установкой вашего приложения. Ниже приведена ссылка, описывающая процесс создания базы данных SQL Compact.
http://technet.microsoft.com/en-us/library/ms173009.aspx
Следующая ссылка обсуждает настройку необходимых зависимостей и предварительных условий для SQL Server Compact. (Обратите внимание, что вам необходимо прокрутить до раздела Развертывание на основе личных файлов .)
http://msdn.microsoft.com/en-us/library/aa983326(v=VS.100).aspx
Если у вас есть сложная база данных или база данных, размер которой может превышать ограничение в 3 ГБ, установленное для баз данных SQL Compact, единственной альтернативой является установка SQL Server Express в качестве необходимого условия для вашего приложения и после его установки создайте подпрограмма в вашем приложении, которая проверяет, существует ли ваша база данных в SQL Express, и, если нет, запускает подпрограмму создания и обновления базы данных.
В моем случае у меня тяжелое приложение, управляемое данными, которое было написано до выхода SQL Compact и должно было работать в средах, которые часто отключались от наших серверов. Мне пришлось использовать SQL Express, чтобы мы разработали механизм проверки обновлений базы данных, когда сервер был доступен. При наличии обновлений зашифрованные файлы сценариев загружаются и выполняются последовательно с дочерней базой данных. После обновления контейнера базы данных вызывается подпрограмма для проверки и синхронизации данных.
- EDIT -
Я хотел быстро ответить, что да, вы можете программно связывать и присоединять базу данных SQL Server к локальному экземпляру SQL Server. Существует множество препятствий для этого, и если у вас есть пользовательская база, которая использует несколько версий Windows, архитектуры ПК и несколько различных сценариев безопасности, у вас, вероятно, будут проблемы с последовательным подключением вашей базы данных к пользовательскому SQL Server. Да, это может быть сделано. Однако я бы рекомендовал избегать этого сценария любой возможной ценой.