Доступ к SqlServer для простой базы данных - PullRequest
4 голосов
/ 15 мая 2009

В настоящее время я разрабатываю очень простую базу данных, которая отслеживает людей и сертификаты компании, которые они имеют. Эта БД должна будет хранить письма о сертификации в виде файлов PDF. Меня попросили разработать это в MS Access, но я думаю, что было бы лучше встроить его в SQLServer и использовать Windows Forms для создания интерфейса. Это приложение должно быть доступно в общедоступном месте, например на общем диске.

У меня такой вопрос, лучше ли было бы делать это в SQLServer, как я думаю, или я полон этого, и мой начальник прав на деньги? Или мы оба не правы?

Ответы [ 8 ]

7 голосов
/ 15 мая 2009

Хорошей альтернативой Access, которую я использую , много , является SQL Server Compact (SqlCe). Это совершенно другой продукт, чем SQL Server Express / Standard / и т. Д. Это внутренняя база данных, подобная Access, она не работает как отдельный процесс или служба.

  • Это бесплатно
  • Полная поддержка ACID
    • Поддерживает несколько подключений
    • Полная поддержка транзакций
    • Ссылочная целостность (включая каскадные обновления и удаления)
    • Блокировка
  • Синтаксис T-SQL и типы данных SQL Server (тот же API, что и у SQL Server)
  • Маленький размер (~ 2 МБ)
  • Простое развертывание (поддерживает ClickOnce, MSI, XCopy и т. Д.)
  • База данных содержится в одном файле, который вы можете перемещать
  • Поддерживает ADO.NET, LINQ to SQL, LINQ to Entities.
2 голосов
/ 15 мая 2009

Это чрезвычайно сложный вопрос, без понимания масштаба приложения. На мой взгляд, я бы не трогал Access с помощью 33,5-футового полюса.

Преимущества доступа:

  1. Нет необходимости в специальной машине
  2. Нет проблем с мобильностью

Преимущества SQL Server

  1. Лучшее соответствие SQL
  2. Улучшенный управленческий контроль

Планируете ли вы хранить файлы PDF в БД? Если так, то почему?

Я выбираю SQL Server.

1 голос
/ 15 мая 2009

Argh, сделайте мир одолжение и использовать SQL-сервер. Экспресс-версии бесплатны и достаточно мощны для ваших нужд. Вы можете даже продолжать делать дизайн формы / отчета / пользовательского интерфейса в Access, если хотите, он может очень легко и прозрачно подключиться к SQL Server.

Преимущества SQL в доступе: параллелизм, масштабируемость, надежность, меньше будущих разработчиков, пытающихся выследить и убить вас.

Я бы почти никогда не использовал доступ к БД, если бы мог избежать его, теперь, когда существует SQL Express.

1 голос
/ 15 мая 2009

Приложение, построенное на SQL Server, будет более надежным и будет поддерживать больше пользователей, чем приложение, построенное на MS Access.

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

Учитывая, что почти во всех случаях я выбираю SQL Server вместо MS Access.

0 голосов
/ 09 июля 2009

Используйте все свои лучшие навыки - Access отлично подходит для самых разных проектов и может очень хорошо масштабироваться, если вы знаете, что делаете. И наоборот, плохой программист может создать приложение в Win Forms и SQL Server и создать плохо работающего монстра.

Лично я бы пошел с SQL Express и интерфейсом Win Forms или ASP.Net, поскольку опыт показывает, что эти небольшие проекты могут со временем легко превратиться в гораздо большие приложения, чем планировалось изначально, и в хорошо структурированную базу данных, основанную на SQL. При необходимости сервер может легче масштабироваться для большего числа пользователей.

0 голосов
/ 15 мая 2009

Если бы я был на вашем месте, я бы использовал то, что говорили другие, и использовал бы SQL Express:

http://www.microsoft.com/express/sql/default.aspx

Вы получаете все преимущества настоящей среды SQL БЕСПЛАТНО! Вы даже можете использовать SQL Management Studio, а также использовать Reporting Services (если вы загружаете расширенный пакет). Ссылка для скачивания ниже:

http://www.microsoft.com/express/sql/download/

Какая версия SQL Server 2008 Express подходит для вас? SQL Server 2008 Express доступен в следующих 3 выпусках (каждое доступно в мастере установки):

SQL Server 2008 Express с инструментами Ядро базы данных SQL Server - создавайте, храните, обновляйте и извлекайте ваши данные SQL Server Management Studio Basic - визуальный инструмент управления базами данных для создания, редактирования и управления базами данных SQL Server 2008 Express с расширенными службами Ядро базы данных SQL Server - создавайте, храните, обновляйте и извлекайте ваши данные SQL Server Management Studio Basic - визуальный инструмент управления базами данных для создания, редактирования и управления базами данных Полнотекстовый поиск - мощный, высокоскоростной механизм для поиска текстовых данных Reporting Services - интегрированная среда создания отчетов и дизайна для создания отчетов SQL Server 2008 Express (только во время выполнения) Ядро базы данных SQL Server - создавайте, храните, обновляйте и извлекайте ваши данные SQL Server 2008 Management Studio Express (SSMSE) Бесплатный, простой в использовании графический инструмент управления для настройки, управления и администрирования SQL Server 2008 Express. Он также может управлять несколькими экземплярами компонента SQL Server Database Engine, созданного любым выпуском SQL Server 2008, включая Workgroup, Web, Standard и Enterprise.

Примечание. Эта отдельная загрузка предназначена для клиентов, которые ранее установили SQL Server 2008 Express (только во время выполнения). Если вы хотите загрузить SQL Server Express и SSMSE впервые, загрузите SQL Server 2008 Express с инструментами из мастера установки.

Доступ, на мой взгляд, действительно инструмент для любителей или для ДЕЙСТВИТЕЛЬНО базовых местных проектов на данный момент, который просто еще не прекращен. Я бы определенно обратился к использованию SQL Express, а также к тому, что его будет гораздо проще обновить, если в будущем вы выйдете за рамки 4 ГБ базы данных.

0 голосов
/ 15 мая 2009

Трудно сказать без понимания окружающей среды. Может случиться так, что все пользователи имеют доступ, но нет настольных компьютеров с .NET Framework (хотя в это трудно поверить). Может быть, все их приложения находятся в Access, и это все, что там знают разработчики и пользователи.

Учитывая все эти глупости, Вы должны использовать SQL Server Express 2008 и Visual Studio 2008 Express . Надеюсь, тебя не уволят. :)

0 голосов
/ 15 мая 2009

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

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

РЕДАКТИРОВАТЬ: Просто прочитайте комментарий, что вы планируете иметь 10 пользователей и менее 1000 записей. ЗАБУДЬТЕ о сервере SQL, вы будете тратить свои деньги впустую. Независимо от того, решите ли вы использовать простое решение с полным доступом или распределенное веб-приложение или настольное приложение с удаленным хранилищем, Access в сотни раз мощнее, чем вам нужно. Даже для механизма «toy-ish», который имеет доступ, вы не используете 1% от него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...