Как распространять приложения SQL Server? - PullRequest
1 голос
/ 10 октября 2010

У меня ОЧЕНЬ простой проект C # Winforms, который я создал с помощью Visual Studio 2010. Он использует SQL Express 2008. Я впервые использую SQL, поэтому мне нужен практический подход к изучению SQL, и этот проект позволил мнечтобы сделать это.

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

Мне сказали, что это можно сделатьиспользуя встроенную функцию VS2010 для создания установщиков MSI, однако это оказалось очень сложным, и я быстро отказался от него.

Для меня идеальным решением было бы просто заархивировать исполняемый файл ипусть он автоматически создает базу данных, таблицы, столбцы, хранимые процедуры и все остальное в коде.Это кажется довольно примитивным, но это также кажется простым и очень прямым.Единственное, я не знаю, возможно ли это.

Мой вопрос к SO-сообществу: что бы вы порекомендовали?Пожалуйста, имейте в виду, что я не хочу, чтобы модель распределения перевешивала сложность самого моего приложения, которое, как я говорил, является очень простым проектом типа портфеля.Также, если бы вы могли предоставить примеры и / или инструкции о том, как поступить с вашим предложением, это также очень ценится.

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 10 октября 2010

В качестве простого решения вы можете создать скрипт для своей базы данных и включить файл скрипта в свой проект (как ресурс или как отдельный файл).При запуске ваше приложение проверит, существует ли база данных, и запустит сценарий, если это не так.
Конечно, это означает, что сам SQL Server уже установлен (или каким-либо образом связан с вашим приложением).UPD.Самым простым способом создания сценария является мастер создания сценариев из Management Studio (щелкните правой кнопкой мыши базу данных, Задачи -> Создать сценарии).Надеюсь, этот мастер доступен в Express Edition.

См. ths thread для примера выполнения скрипта из кода .NET.

0 голосов
/ 10 октября 2010

Возможно, вы захотите взглянуть на Visual Studio проекты базы данных .

Они помогут отслеживать все объекты в базе данных и упростят развертывание , не прибегая к созданию баз данных и объектов базы данных с вашим собственным кодом.

...