VistaDB有哪些优点

时间:2008-09-10 20:40:28

标签: sql-server database sqlite firebird vistadb

我已经看过多年来对VistaDB的引用以及SQLite,Firebird,MS SQL等工具。人。我没有理由考虑它。

使用其他技术支付VistaDB有什么好处?我想到的事情:
1.紧凑的框架支持。 SQLite + MSSQL支持CF.
2.需要迁移到“更强大”的系统。火鸟+ MSSQL。
3.需要更高级的功能,如触发器。 Firebird + MSSQL

4 个答案:

答案 0 :(得分:24)

VistaDB客户端运行时是免费的。当你把它放在运行时永远不会“凌晨3点到期”。只有开发人员工具以这种方式获得许可。每个开发人员需要1个许可证,简单。我们甚至提供了一个非常便宜的Lite版本,没有Visual Studio工具。

其他一些好处

100%托管代码 - 引擎中没有互操作或其他非托管调用。对一些人来说这是一个大问题,而其他人则不在乎。

无需注册表访问 - proc数据库中的大多数其他数据库都需要注册表访问才能查找父控件或权限。 VistaDB只执行您告诉它的操作,甚至可以在Medium Trust中运行。

运行时和数据库的

XCopy部署(单个文件)。您可以对应用程序,运行时和数据库进行xcopy并运行。无需在机器上安装或配置任何内容,无需特殊权限(我们可以在Medium Trust或更高版本中运行)。

隔离存储 - 您可以将整个数据库放入隔离存储中并直接从那里运行。这使得一旦为企业环境以域友好的方式编写数据库的应用程序构建安全点击非常容易。无需将用户数据存储在共享驱动器上,也无需担心权限映射。

CLR触发器/ CLR过程 - 您可以编写CLR代码并将其用作触发器或存储过程。我们最近刚刚引入了一些更改,以便更容易维护可在VistaDB和SQL Server 2005/2008中运行的单个CLR程序集。

T-SQL过程 - VistaDB T-SQL过程与SQL Server 2005/2008兼容。在我们的引擎中工作的任何过程都将在SQL Server中运行。这并不意味着任何在那里运行的东西都会移植到我们这里。我们是SQL Server中功能的子集。但我们也是在没有SQL Server的情况下运行T-SQL Procs的唯一方法(SQL CE无法做到)。

我个人认为最大的功能之一就是能够在以后升级到SQL Server。所有VistaDB类型,语法和CLR过程,T-SQL过程等都将在SQL Server上运行。 (你不能把所有东西从SQL Server下载到VistaDB,但它是一个子集)

32/64位部署 - VistaDB是一个单独的程序集部署,无需更改即可运行32位和64位。 SQL CE需要两个不同的运行时,具体取决于操作系统,并且根本无法在IIS下运行。 Access没有64位运行时,最新的32位运行时只能通过MSI部署。 32位版本的Windows具有运行时,64位版本没有。

关系完整性 - VistaDB实际上也强制执行您的约束和外键。您可以进行特定的级联更新和删除操作。评论我们的人就像SQLITE在这方面是错误的。它们解析约束,但不强制执行它们。

编辑:他们现在在SQLite中支持FK。但它们默认情况下不会编译,也不会使用与SQL Server相同的语法。

中等信任 - 在中型信任网络服务器上运行的能力是许多人不会关心的另一个功能,但这是一个大问题。许多第三方控件甚至无法在Medium Trust中运行。我们可以在Medium Trust中运行完整的引擎,因为我们承诺100%托管代码并且需要最少的权限。

- 完全披露 - 我是VistaDB的所有者,所以我可能有偏见。 :)

答案 1 :(得分:5)

嗯,主要的是它是纯托管代码 - 值得的;它不仅适用于运行.NET的典型Windows机器,而且适用于运行Compact Framework的任何地方,甚至适用于Mono。以下是他们主页上的一些值得注意的要点:

  • 小< 1 MB足迹真正嵌入了ZeroClick
  • Microsoft SQL Server 2005兼容数据类型和T-SQL语法
  • 没有SQL CE限制
  • 单用户,多用户本地或使用共享网络。
  • 部分信任的共享主机没问题。
  • 免版税分发 - SQL Server的单CPU部署成本高于VistaDB的站点许可证!

值得注意的是,Rob Howard的公司telligent将其用作新CMS软件的默认数据库“Graffiti。”

我已经在这里和那里玩过,但还没有构建任何反对它。

答案 2 :(得分:5)

对我来说,VistaDB最有趣的功能是它可以在Medium Trust环境中运行。这使其成为创建可通过复制和粘贴(x-copy部署)部署在服务器上的中小型.NET网站的完美解决方案。

几乎所有Windows共享托管服务提供商(如GoDaddy)都不允许您以完全信任模式运行您的网站。如果您希望使用SQLite,也不会为您安装任何第三方二进制文件到System.Data.SQLite.dll等GAC。

答案 3 :(得分:0)

之前我没见过VistaDB,看起来确实很酷。

更新:收到来自VistaDB的人的评论 - 他们的更新模型仅用于获取新版本。如果许可证到期,您的旧版本将不会停止工作,这很有用。

保留原始帖子作为恕我直言,关于软件许可证到期的警告仍然值得考虑,即使VistaDB本身也没问题。


它看起来肯定比SQLite“更有特色”,但我没有看到任何可以证明成本合理的东西。该网站似乎表明您可以以279美元购买一个许可证,但这意味着这只是一年的订阅。你是否需要在明年支付另外279美元才能阻止你的网站崩溃?

如果是这样的话,请记住将“成本”考虑到因为他们的VistaDB许可证已经过期而在您恐慌的客户凌晨3点(墨菲定律,它总是凌晨3点)接到电话时会产生多大的不便: - (< / p>

我亲身体验了一些过期的软件,而且它永远不会好。您可以向您的客户发送电子邮件和消息,并闪烁整个屏幕闪烁红色说“您需要在下周之前获得新许可证”并且他们仍然永远不会这样做,并且您仍然会在凌晨3点遇到痛苦过期。