2008-09-25 3 views
10

Я сейчас планирую инфраструктуру для своего будущего веб-проекта. Я хочу пойти туда, где Джоэл пошел с одним БД на клиента и теперь думал, какой двигатель БД будет полезен для меня. Лучшим был бы, конечно, SQL Server, но я не могу позволить себе полномасштабную версию на данный момент, и я не думаю, что SQL Server Express будет хорошим выбором для загруженного сервиса. Теперь я думаю об использовании PostgreSQL. Учитывая, что моей средой разработки будет ASP.NET 3.5 с указанием NHibernate или LINQ to SQL, насколько я буду иметь проблемы, если буду использовать PostgreSQL вместо SQL Server?Планирование использования PostgreSQL с ASP.NET: плохая идея?

Спасибо!

ответ

3

Почему бы не начать с SQL Server Express и не мигрировать, когда у вас есть деньги? Таким образом, вы можете двигаться к тому, что считаете идеальным, и уменьшать стоимость конверсии.

+0

Я использую SQL Express сервера в производстве с небольшим приложением, и он поддерживает 9 DBS (реальных клиентов, использующих это) безупречно. Вам просто нужно следить за ресурсами сервера, чтобы решить, когда перейти на бесплатную версию SS – LaBracca 2014-07-14 13:05:12

1

Если вы используете PostgreSQL, вы не сможете использовать LINQ to SQL. В настоящее время LINQ работает только с SQL Server (возможно, с Oracle). Я не уверен в NHibernate. Кроме того, если вы используете PostgreSQL, в прошлый раз, когда я проверял, они отказались от поддержки Windows. Таким образом, вы будете изучать возможность использования второго блока Linux для БД.

[EDIT]

Оказывается PostgreSQL поддерживается на окнах. Я не могу вспомнить, где я видел отмену поддержки. Во всяком случае, я слышал, что он все равно работает на Linux, так что вы можете захотеть сделать это независимо.

+0

Postgres имеет версии Windows для всех версий 8.x: http://www.postgresql.org/download/windows – Powerlord 2008-09-25 01:37:10

+0

Поддержка Postgres 8.0 .x на Windows было прекращено некоторое время назад. – 2008-09-25 09:59:32

4

Я не думаю, что это плохая идея, но отличный опыт.

К слову, NHibernate - это способ пойти в Linq, чтобы Nhibernate находится в тяжелом развитии и доступен в багажнике, поэтому, если вы заботитесь «о том, что мне все равно» о Linq, не пугайтесь его использовать.

11

NHibernate работает нормально с PostgreSQL (независимо от того, работает ли он в Windows или UNIX-подобных операционных системах), и .NET хорошо работает с ним, используя поставщик Npgsql db.

Единственная «проблема», которую вы получите, конечно, PostgreSQL не выполняет T-SQL. На самом деле его PL/SQL-файл, поддерживающий PL/pgSQL, ближе к PL/SQL Oracle, чем к T-SQL MS SQL Server. Таким образом, вам придется перекодировать ваши сохраненные procs, и будут некоторые исправления, если вы будете делать ADO.NET. Если вы используете NHibernate, вам, вероятно, не придется беспокоиться об этом. Нет LINQ to SQL, хотя вам так тяжело.

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

1

В эти дни, Postgres работает очень быстро с .net, и это так же хорошо или даже лучше, чем собственность MSSQL

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