Что причины состоят в том, чтобы использовать SQL Server вместо MySQL со сложным проектом .NET?

У нас в настоящее время есть 10-летняя противная база данных SQL Server стиля кода спагетти, которую мы скоро надеемся в значительной степени переписывать с нуля как часть переписывания к большому веб-приложению. (Существующее приложение будет служить функциональными требованиями для следующего воплощения приложения), новая версия будет разработана в .NET, таким образом, значительная часть стека приложений будет основана на технологиях Microsoft (Visual Studio будет используется, IIS будет сервером приложений).

Один из разработчиков на проекте указал на возможность переключения на MySQL вместо SQL Server, чтобы экономить на стоимости для обоих лицензия сервера БД, а также инструментов, чтобы разработать и управлять DB (таким как замечательно свободный MySQL Workbench).

Каковы различные за и против использования SQL Server по сравнению с MySQL как база данных для сложного проекта .NET? Цена является одним фактором, который мы выявили, оба с точки зрения лицензии сервера БД, а также инструментов для управления DB, но что играют роль другие факторы?

10
задан cdeszaq 15 April 2010 в 15:55
поделиться

7 ответов

Мой список плюсов и минусов для MySQL и SQL Server для проектов .NET:

Плюсы MySQL:

  1. Стоимость

Плюсы SQL Сервер:

  1. Лучшая поддержка инструментов, особенно для .NET (Entity Framework + другая поддержка ORM НАМНОГО лучше)
  2. Лучшая поддержка Visual Studio
  3. Лучшая поддержка интеграции, особенно если вы хотите делать такие вещи, как Silverlight + RIA, и т. д.
6
ответ дан 3 December 2019 в 21:58
поделиться

Похоже, вы работаете над большим проектом. Очевидно, что стоимость лицензии будет выше при использовании SQL Server по сравнению с MySql, но при использовании MySql также есть много скрытых затрат.

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

0
ответ дан 3 December 2019 в 21:58
поделиться

Наряду с другими ответами на этой странице я бы также рассмотрел следующее:

  1. MS SQL имеет возможности зеркального отображения базы данных - если вам нужна высокая доступность и автоматическое переключение при отказе, это было бы то, что нужно учитывать.
  2. Наличие экспертов на местах. Вам следует немного изучить варианты получения помощи от местных экспертов. Когда ваша база данных мертва, вы не хотите внезапно обнаруживать, что локальная помощь недоступна.
0
ответ дан 3 December 2019 в 21:58
поделиться

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

Вы можете просто перетащить базу данных и бросить ее в конструктор, и альт! Генерируются все объекты, отображаемые в таблицы и их отношения. alt text
(источник: scottgu.com )

Что касается MySQL, очевидно, что стоимость лицензирования является преимуществом

4
ответ дан 3 December 2019 в 21:58
поделиться

Лично я бы придерживался MSSQL при использовании .NET. Это гораздо более удобный инструмент, как предлагали некоторые из людей ранее

Но Java имеет довольно дружелюбную среду с MySQL. Если вы не против использования Java, попробуйте. IDE NetBeans с Java Persistance API действительно дружественна к MySQL :)

0
ответ дан 3 December 2019 в 21:58
поделиться

Плюсы SQL Server:

  • Транзакции для всех таблиц (Нет выбора между быстрым механизмом и безопасным механизмом)
  • В SQL Server, когда подзапросы являются наиболее естественным способом написания запроса, вы можете сделать это. Особенно с производными таблицами и подзапросами Where Exists вряд ли будет снижение производительности.
  • Любые образцы, с которыми вы сталкиваетесь от MS, будут предполагать SQL Server. В моей текущей работе переводить все на Oracle всегда неприятно.
  • Я обнаружил, что производные столбцы в SQL Server очень удобны, хотя они могут сбивать с толку ORM.
  • Поддерживает ли MySQL внешние ключи или ограничения проверки?
0
ответ дан 3 December 2019 в 21:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: