Можно ли разработать приложение базы данных в Visual Studio 2010 для Microsoft SQL Server, а затем использовать MySQL? - PullRequest
0 голосов
/ 20 декабря 2010

Инструменты разработки для SQL в Visual Studio великолепны.

Можно ли разработать приложение для Microsoft SQL Server, а затем развернуть базу данных, совместимую с MySQL?

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

Ответы [ 5 ]

2 голосов
/ 20 декабря 2010

Вам потребуется использовать MySql .net разъем

http://dev.mysql.com/doc/refman/5.1/en/connector-net.html

Благодаря этому вы получаете некоторые функциональные возможности, которые есть у вас с сервером SQL (инфраструктура сущностей, дизайнер и т. Д.), Но есть множество вещей, которые не поддерживаются, но это хорошее начало

1 голос
/ 20 декабря 2010

Возможно, это не прямой ответ на ваш вопрос, но вам может пригодиться проект dblinq .

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

1 голос
/ 20 декабря 2010

Один из способов сделать это - абстрагировать саму базу данных.Это можно сделать хотя бы несколькими способами;во-первых, вы можете использовать классы для создания SQL, который требуется вашему приложению, а затем просто использовать его;тогда все, что должно произойти, это то, что он должен знать, как генерировать правильный SQL для правильного сервера.Однако одним из недостатков такого подхода является то, что если вы зависите от функциональности, существующей только в одной СУБД, вам придется эмулировать ее на этом уровне абстракции.

Другой метод, который вы могли бы использоватьиспользуется для создания двух версий ваших классов, которые взаимодействуют с СУБД, одна для MySQL и одна для Microsoft SQL Server.Используйте интерфейс и наследуйте его для того, чтобы сделать фактическую реализацию.Конечно, вы захотите убедиться, что единственная ответственность класса - это взаимодействие с базой данных, поэтому, если вы делаете это для объектов бизнес-уровня, вы реализуете такие вещи с помощью двух классов:один низкоуровневый для API базы данных и высокоуровневый для фактического предоставления API, который будет использовать ваше приложение.

1 голос
/ 20 декабря 2010

Это возможно, но ряд особенностей может помешать полной реализации на SQL Server, особенно в отношении хранимых процедур.

Однако, если целью является создание каркаса на VisStudio и завершение разработки с использованием инструментов MySQL, все будет работать нормально. Вам придется изучить оба SQL-кода довольно тщательно. Чем раньше вы это сделаете, тем меньше будет скорби в обращении.

0 голосов
/ 20 декабря 2010

Вы можете написать свой код для SQL Server и затем переключиться на Devart LinqConnect .
Например, вы можете создать модель LINQ to SQL с помощью Entity Developer (в режиме интеграции VS или в автономном режиме), затем изменить соединение на специфичное для MySQL и запустить мастер обновления базы данных из модели (не забудьте выбрать Флажок Восстановить хранилище).
В результате вы получите базу данных MySQL, имеющую структуру, идентичную структуре SQL Server.

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