Firebird 是适用于 ASP.NET 的良好嵌入式数据库吗?还有哪个?
Posted
技术标签:
【中文标题】Firebird 是适用于 ASP.NET 的良好嵌入式数据库吗?还有哪个?【英文标题】:Is Firebird good embedded DB for ASP.NET? Which else? 【发布时间】:2011-06-22 08:11:43 【问题描述】:为我的 asp.net 应用程序寻找一个好的嵌入式数据库,同时试图避免使用 SQLExpress(我需要它是一个无需安装在服务器上的可下载文件),我发现火鸟。但是:
据此: http://en.wikipedia.org/wiki/Embedded_database#Firebird_Embedded
它与 Firebird 的经典和超级服务器版本具有相同的功能,除了 两个或多个 THREADS(不仅仅是应用程序)不能同时访问同一个数据库。因此 Firebird 嵌入式充当本地服务器,供单线程客户端访问其数据库(这意味着它不适用于 ASP.NET Web 应用程序)
不过,根据http://www.firebirdsql.org/en/development-net-provider/, 发布了一些 ASP.NET 提供程序。
可以在此处找到 ADO.NET 数据提供程序、ASP.NET Web 提供程序和 DDEX 提供程序的每周版本。
所以问题是:在 asp.net 中使用它是不是一个好的嵌入式数据库替代品?
如果没有,你会推荐什么?
【问题讨论】:
我已经修复了***的文章,firebird 2.5 嵌入式是完全多线程的,它完全支持 asp.net blog.cincura.net/… @Mariuz:很好,谢谢!您应该将其发布为答案。 我也发布了答案,忘了你不能对 cmets 投票 如果符合您的要求,您也可以将 MS Access 用作嵌入式数据库 【参考方案1】:我已经修复了***的文章,firebird 2.5 嵌入式是完全多线程的,它完全支持 asp.net http://blog.cincura.net/231742-firebird-embedded-in-comparison-to-sql-server-compact-edition-4/
另外,从我在 jiri 的博客上看到的内容来看,它可以在 azure 上运行 http://blog.cincura.net/232332-using-firebird-inside-azure-without-vm-role/ 在亚马逊上 http://blog.cincura.net/232333-amazons-ec2-micro-instance-and-firebird/
【讨论】:
【参考方案2】:是的,是的。我相信这是您最好的选择之一。
特别是因为您将在非 MS 环境中运行它。我知道 PostgreSQL 是一个很好的开源数据库,但它没有嵌入式版本。
您的另一个选项是SQLite。
【讨论】:
Firebird 嵌入式运行良好,如果需要,您可以非常轻松地切换到完整版。 @Hughes 你打赌!我只提到了 SQLite,因为 OP 需要知道选项。 您好,感谢您的回答。但是在像 Web 应用程序这样的多线程环境中可以吗?因为据我所知,由于缺乏适当的锁定机制,SQLite 存在(或存在)问题(整个数据库将在更新时被锁定,使所有其他客户端等待)。这是不是一个问题? 至于 SQLite,我不知道。是什么阻止您安装 Firebird 服务器?这是一个如此简单的过程。 Embedded Firebird 适用于独立应用程序。 我想把它放在共享主机服务器上,所以我不确定我是否可以这样做。【参考方案3】:可能值得一看的是SQL Compact。最新版本适用于 ASP.NET 并在进程内运行。您只需要部署几个 DLL。
我必须承认我对 Firebird 一无所知,所以无法直接比较。
【讨论】:
很抱歉,我应该提到我对任何 MS 解决方案都不感兴趣(需要在单声道上运行)。 在这种情况下,SQL Compact 绝对不适合您,因为它是托管代码以上是关于Firebird 是适用于 ASP.NET 的良好嵌入式数据库吗?还有哪个?的主要内容,如果未能解决你的问题,请参考以下文章
部分视图部分适用于 JQuery,但不完全适用于 C# ASP.Net MVC 5
ASP.NET:为无 cookie 会话实现 ISessionIDManager?
适用于 Amazon S3 的 .NET 库或 asp.net 应用程序
asp.net中的ADO.NET实体框架适用于不同的数据库及其性能