PostgreSQL还是MS SQL Server?

5

我正在考虑在.Net Web应用程序中使用PostgreSQL。基本上有三个原因:

  1. 成熟的地理查询
  2. 小的占用空间+Linux
  3. 价格

但我对工具有些疑问,SQL Server Profiler和查询计划以及性能监视器非常有帮助。Postgres的情况如何?还有其他需要考虑的事情吗?

编辑:最可能使用NHibernate作为ORM。

3个回答

6
Postgres自带pgAdmin,可提供图形化的解释,以帮助您优化查询。在SQL输入窗格中输入查询并按F7键,可以清晰地了解查询的计划和执行情况。更多信息请参见:图形化解释计划
如果您正在进行Web应用程序并存储或处理IP地址,则可以使用INET数据类型,该类型允许您将IP地址存储为实际类型,并直接执行各种操作,例如确定IP地址是否在禁止子网中。无需在代码中存储4个四元组并重新组合它们,也不需要将其存储在字符串中。
如果.NET应用程序运行在Linux上,那是一个额外的好处吗?

我不了解mySQL,但是Postgres在Linux上运行得更快,所以无论你的前端是用什么语言编写的,在Linux上运行pg都是一个优点! - Mr Shoubs

2

有许多适用于PostgreSQL的工具,有些是免费的,有些则不是... PgAdmin + Explain ANALYZE 通常可以提供你所需要的一切,并且它是免费的。


0

我会考虑使用MS SQL,因为它支持LINQ to SQL。

还有dbLinq,虽然仍处于早期alpha版本,但对于非常简单的查询它也能正常工作。


1
NHibernate 很可能是 ORM 的选择。 - mmiika

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接