2009-12-16 3 views
3

Есть ли кросс-платформенное решение для sql? Мой прототип был в sqlite. Я перехожу на сервер, который предлагает tsql, и я рассматривал mysql в прошлом для своих веб-серверов (возможно, я должен придерживаться tsql и sqlite). Мне интересно, есть ли .NET lib, который позволяет мне писать sql, совместимый со всеми.Перекрестная платформа SQL? (sqlite + mysql + tsql)

Некоторая досада, которая была у меня была в создании стола. Я думал, что первичные ключи автоматически увеличиваются, но они не делают. Я должен написать идентификатор (1,1). Когда я портировал свой код sqlite в mysql, у меня были проблемы с таблицей create, но я уверен, что будут другие места, когда мои SQL-запросы станут более сложными. Так что я думал, что попытка lib может быть хорошей идеей.

+0

Какой язык программирования вы используете? –

ответ

0

ORM, как NHibernate или Entity Framework, будет поддерживать все эти sql-серверы и многое другое. Это также избавит вас от необходимости писать все ваши SQL-запросы.

0

Возможно, вы захотите взглянуть на ADO.NET Entity Framework. Он поддерживает множество разных бэкендов.

2

Я лично использую SubSonic как ORM. Он поддерживает как SQL-Server, так и MySQL, а также SQLite. Создание базы данных всегда является сложным вопросом, но вы обычно часто не выполняете его. Я выбрал SQLite, так как он очень портативен и должен также быть доступен, когда я использую порт с помощью Mono. TSQL (SQL-Server) является продуктом только для Windows и не переносится. Мои базы данных также не будут очень большими (< 100 Мб), и это также может потребоваться для вашего выбора.

Я бы порекомендовал (на данный момент, пока VS 2010 не будет), что вы не используете Entity Framework, так как это традиционный продукт версии v1.0 MS и очень проблематичен. Существенных особенностей нет, и искусственные ограничения делают его менее полезным, чем другие ОРМ. Без сомнения, следующая версия будет лучше, но текущая версия не стоит вашего времени по сравнению с чем-то вроде SubSonic.

Смежные вопросы