SQL Server CE - 是不是需要安装(而不仅仅是包含 DLL)?
Posted
技术标签:
【中文标题】SQL Server CE - 是不是需要安装(而不仅仅是包含 DLL)?【英文标题】:SQL Server CE - is an installation required (as opposed to just a DLL include)?SQL Server CE - 是否需要安装(而不仅仅是包含 DLL)? 【发布时间】:2010-07-27 08:31:33 【问题描述】:背景 - 如果我正在构建 WPF 桌面应用程序(VS2010 和 .NET 4)并且想要使用轻量级数据库但无需单独安装。从我读到的内容来看,SQLite 没问题,但是我认为坚持使用 Microsoft 位并尝试使用 SQL Server CE 会很好。
问题 - SQL Server CE 是否需要独立于我的 WPF 应用程序安装的“安装”?还是只需要我在 VS2010 中创建数据库(尽我所能)并确保在部署应用程序时包含适当的 DLL?我正在查看以下链接中的 doco,但我不清楚...
http://technet.microsoft.com/en-us/library/bb190958(SQL.100).aspx
谢谢
PS。我看到的另一个令人担忧的项目是“如果您安装 Windows XP SP2,要使用 SQL Server Compact 连接,您将必须启用 HTTP 访问。默认设置是禁用 HTTP 访问”,来自页面http://technet.microsoft.com/en-us/library/ms171869(SQL.100).aspx 所以希望这不是能够在没有安装问题/大惊小怪的情况下使用 CE 的另一个复杂因素?
【问题讨论】:
【参考方案1】:您不需要安装 SQL Server CE 2005。只需复制 DLL as described on MSDN。不需要管理员权限。
【讨论】:
【参考方案2】:Sql Server CE 版本 4 不需要安装,但它还没有发布(甚至没有测试版)。你可以在这里阅读更多信息: New Embedded Database Support with ASP.NET
如果我是你,我会坚持使用 Sqlite。它是免费的,拥有出色的 .Net 提供程序并支持实体框架,而且速度非常快。
【讨论】:
谢谢 - 所以对于简单的数据库结构,CE 与 Sqlite 相比没有明显优势? -1 错误。这不是选择 Sqllite 的理由。该链接是关于安装以与 ASP.net 应用程序一起使用的。 SQL Server CE 2005 不需要安装桌面应用程序。 Just copy the DLLs as described on MSDN 检查(我的回答如下)微软关于安装 SQL Server Combact 3.5 的说法【参考方案3】:根据this微软文档:
“要在应用程序中安装 Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5),您必须运行适用于台式计算机的 SQL Server Compact 3.5 安装程序 (SSCERuntime-ENU.msi)。通过运行安装程序来安装 SQL Server Compact 3.5注册本机 DLL 并将托管程序集放在全局程序集缓存中。这确保计算机上 SQL Server Compact 3.5 的安装可以由 Microsoft 更新或类似技术提供服务。"
另请参阅this 文章(LINQ 和部署 SQL Server CE 3.5)
【讨论】:
最初 Msft 曾说过 MSI 是您链接中的部署所必需的,但他们也以迂回的方式打开了仅 dll 进程,因为该应用程序将自动加载 sqlce DLL应用程序的本地目录在安装程序放置在程序文件中的目录之前。看起来与 VS2010 文档(MarkJ 的链接)一样,它们已经出来并明确支持 dll 捆绑方法(您的第二个链接也描述了该方法) @Anthony,@ileon。我认为 Anthony 是正确的,您不必运行安装程序。如果您运行安装程序,则 sqlce 将由 Windows Update 更新。如果您在本地复制 DLL,则不会。以上是关于SQL Server CE - 是不是需要安装(而不仅仅是包含 DLL)?的主要内容,如果未能解决你的问题,请参考以下文章
如何检查 SQL Server CE 3.5 中是不是存在表
我可以将 Sql Server CE (3.0) 用作 Windows 应用程序的嵌入式数据库吗?我必须在机器上安装 Sql Server CE 吗?