进程内数据库经常用于桌面安装应用程序和小型网站。通过恰当的设计后,它们很容易安装,且无需用户的维护。可惜,当前版本的 SQL CE 具有一些缺陷,基本上让其在这两种情况下都无法被运用。
糟糕的设计让 SQL CE 在托管环境中无法使用。微软通过许可限制和硬编码代码块的组合方式来禁止 ASP.NET 访问 SQL CE 数据库,甚至是读取其中的数据,他们之前特别在意这点。这不仅让托管小型内部网站的运用场景不能运用它,也阻止了在诸如从网站创建一个可下载的 SQL CE 文件这样的有趣场景中运用的可能。
不像其他嵌入式数据库,只需同时发布相应的 DLL 就行,SQL CE 要求用管理员权限来进行安装。这对于很多家庭用户会造成很多不便,对于大企业的 ClickOnce 部署也不能保证让所有用户都获得管理员权限。
SQL CE 4.0 应该是纠正了这两个缺陷。对于托管环境可以安全的正常运行,新版本也无需进行安装。并且对于用户担心的数据过度增长的问题,也提供了迁移工具把它转换为标准的 SQL Server 数据库。
CE 依然是一个“安全的”文件格式。这意味着不能包含诸如存储过程这样的任何嵌入代码。所有的访问都必须通过内联 SQL 或类似实体框架这样的 ORM 来进行。它完全符合 ACID 的要求,包括基本的事务支持。类似存储点和嵌套事务这样的高级技术就不支持了。
SQL Server CE 4.0 将在下周发布一个测试版。你可以从 Scott Guthrie 的博客中了解关于SQL CE 的更多信息。
查看英文原文: Major Improvements Have Been Made to SQL Server Compact Edition
评论