Domanda

Attualmente sto pianificando l'infrastruttura per il mio futuro progetto Web. Voglio andare come ha fatto Joel con un DB per client e ora pensando a quale motore DB andrà bene per me. Il migliore sarebbe ovviamente SQL Server, ma al momento non posso permettermi una versione completa e non penso che SQL Server Express sarà una buona scelta per il servizio caricato. Ora sto pensando di usare PostgreSQL. Dato che il mio ambiente di sviluppo sarà ASP.NET 3.5 con NHibernate o LINQ to SQL, quanti problemi avrò se uso PostgreSQL invece di SQL Server?

Grazie!

È stato utile?

Soluzione

Perché non iniziare con SQL Server Express e migrare quando hai i soldi? In questo modo puoi spostarti verso ciò che ritieni ideale e ridurre i costi di conversione.

Altri suggerimenti

NHibernate funziona bene con PostgreSQL (sia che il db sia su sistemi operativi Windows o UNIX) e .NET funzioni bene con il provider db Npgsql.

L'unico "problema" ovviamente avrai PostgreSQL che non fa T-SQL. In effetti il ??suo linguaggio proc memorizzato PL / pgSQL è più vicino al PL / SQL di Oracle che al T-SQL di MS SQL Server. Quindi dovrai ricodificare i tuoi processi memorizzati e ci saranno alcuni aspetti da tenere d'occhio se fai ADO.NET. Se usi NHibernate, probabilmente non dovrai preoccuparti molto di questo. Nessun LINQ to SQL però, tanta fortuna per te.

PostgreSQL è scalabile e funziona bene ora con Windows (le versioni precedenti non supportavano Windows formalmente), e pgAdmin è un buon strumento di gestione, sarai in grado di fare la maggior parte delle cose che puoi fare con SQL Server Strumenti GUI con esso in breve tempo.

Non penso che sia una cattiva idea, ma un'ottima esperienza.

A proposito NHibernate è il modo di andare da Linq a Nhibernate è in forte sviluppo e disponibile nel bagagliaio, quindi se ti interessa "che non mi interessa" su Linq non abbiate paura di usarlo.

Se vai con PostgreSQL non sarai in grado di usare LINQ to SQL. Attualmente LINQ funziona solo con SQL Server (possibilmente Oracle). Non sono sicuro di NHibernate. Inoltre, se usi PostgreSQL, l'ultima volta che ho controllato, avevano perso il supporto di Windows. Quindi vedrai come avere una seconda scatola con Linux per il DB.

[EDIT]

Si scopre che PostgreSQL è supportato su Windows. Non ricordo dove ho visto l'annullamento del supporto. Ad ogni modo, ho sentito che funziona meglio su Linux comunque, quindi potresti voler guardare a farlo indipendentemente.

In questi giorni, Postgres funziona molto velocemente con .net ed è buono o addirittura migliore del mssql proprietario

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top