Опыт работы с SQLExpress для многопользовательского коммерческого приложения? - PullRequest
3 голосов
/ 19 сентября 2008

Я унаследовал приложение VB6 / Access, которое мы разрабатывали и продавали в течение многих лет. Мы собираемся на SQL Server 2005 Express Edition и .Net.

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

Если мы пойдем с SQLExpress, я считаю, что нашему приложению потребуется больше усилий для настройки SQLExpress на сервере. Но я думаю, что мы получим лучшую безопасность и (без изменений в коде) версию SQL для крупных клиентов.

Как я могу создать лучший пользовательский опыт с точки зрения установки и технической поддержки? Какие проблемы возникли у вас? Какие процедуры установки сработали?

Вы устанавливаете отдельную установку для сервера / клиента или просто предоставляете хорошие инструкции? Какие вещи покупатели ошибаются с первой попытки?

Ответы [ 8 ]

3 голосов
/ 19 сентября 2008

Проект развертывания из Visual Studio позволяет с легкостью установить экземпляр SQL Server Express.

У нас аналогичный сценарий для наших приложений, и это означает, что вам нужны отдельные установки для клиента и сервера.

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

Сохранение идентификатора версии в базе данных, например, 1.0.1 Обновление AssemblyInfo.cs клиентского приложения и обеспечение соответствия версии сборки версии, хранящейся в базе данных. Если этого не произойдет, пользователю будет предложено установить новую версию.

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

2 голосов
/ 19 сентября 2008

Я бы порекомендовал пойти по маршруту SQL Express и включить его в установочный пакет. Установщик имеет множество параметров командной строки, и вы можете использовать сценарии SQL, чтобы выполнить любую настройку базы данных после установки (т.е. включить / отключить интеграцию CLR, OpenRowset, другие функции).

Кроме того, он намного стабильнее, чем старая MSDE 2000; Мне снились кошмары, поддерживающие это. Я также обнаружил, что в 99 случаях из 100 установка параметров по умолчанию для БД делает людей счастливыми.

Веб-журнал SQL Express

Как установить SQL 2008 Из командной строки

2 голосов
/ 19 сентября 2008

Сколько пользователей и сколько данных?

Я не знаю, есть ли общие рекомендации о том, сколько пользователей «слишком много» для SQL Express 2005, но существует жесткий предел данных в 4 ГБ. Полагаю, вы бы этого не сделали с наследием Access, но это было бы полезно знать.

Вы можете автоматизировать установку SQL Express. Я видел, как это сделано, потому что что-то, что установила моя жена, сделало это, и она - последний человек, которого я подозреваю, чтобы установить это.

Существует также SQL Server Compact Edition , которая, как я считаю, предназначена для .NET 3.5, а также для Windows Mobile. Я считаю, что это больше похоже на биты «единой файловой базы данных», которые вы получили в Access.

1 голос
/ 19 сентября 2008

В моей компании мы часто им пользуемся. Были проблемы с медленным запуском на медленных машинах.

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

1 голос
/ 19 сентября 2008

SQL Express станет огромным шагом вперед по сравнению с Access по возможностям и надежности. Для этого не нужно больше настраивать, просто нужен другой подход, если вы знаете, что делаете.

0 голосов
/ 19 сентября 2008

Другой вариант: я считаю, что вы также можете использовать SQL Server Express в «файловом режиме», когда вы просто указываете на файл MDF, и вам не нужно запускать экземпляр SQL Server. Это было бы очень похоже на то, как ваше текущее приложение использует Access. Я не уверен, как это работает в многопользовательских ситуациях, но это может быть что-то, чтобы исследовать.

0 голосов
/ 19 сентября 2008

SQL Server 2005 Express Edition легко устанавливается с помощью любого достойного установщика. Пара часов работы - это все, что нужно! Если ваше сердце настроено на это, не позволяйте страху установки сдерживать вас.

0 голосов
/ 19 сентября 2008

Поскольку вы все еще рассматриваете возможность перехода на SQLExpress, рассматривает ли ваша группа SQLite ? Вы по-прежнему можете использовать требуемую функциональность базы данных, не устанавливая движок в систему клиента.

...