客户端 PC 上的 LocalDB 部署
Posted
技术标签:
【中文标题】客户端 PC 上的 LocalDB 部署【英文标题】:LocalDB deployment on client PC 【发布时间】:2012-03-28 03:52:34 【问题描述】:我对这个新版本的 SQL Server Express 非常感兴趣。
(我)不清楚安装程序应该如何部署使用 LocalDB 的应用程序。
是否需要在客户端 PC 上安装 SQL Server Express,然后附加 MDF 文件?
或者它只需要运行LocalDB.msi
并且它像SQL Server Compact 一样作为独立文件工作?
【问题讨论】:
观看此演示可能会有所帮助:channel9.msdn.com/posts/SQL11UPD03-REC-07 你考虑过使用SQL Server CE吗?没有独立的进程,但功能几乎相同。不确定它是否适用于您的情况 - 但如果是这样,它会使部署变得轻而易举(没有) 抱歉,不支持存储过程。我应该解释一下。我将 LocalDB 视为分发我的真实应用程序的完整功能演示的一种方式,该应用程序需要具有数据共享功能的 SQLServer。我希望在不需要在客户 PC 上安装 SQLServer 的情况下发送 CD 或在现场下载文件 【参考方案1】:你不需要安装 SQL Server Express 来使用 LocalDB,因为 LocalDB 是 SQL Server Express,只是更容易安装。
安装 LocalDB 后,您可以使用连接字符串的 AttachDbFileName 属性“打开”一个 MDF 文件。请记住,同一文件只能由单个 LocalDB 实例(单个 Windows 登录)在任何给定时间打开,因此这不是数据共享功能。
更新:如果您的应用程序使用 .NET,请确保安装 .NET 4.0.2 或更新版本,如 mentioned here。最初的 .NET 4 不理解 LocalDB 连接字符串,因为它早在 LocalDB 之前就已经发布了。
【讨论】:
那么,我的安装应用程序只是安装 LocalDB 二进制文件,然后更新我的连接字符串,我准备好了吗?感谢您对数据共享问题的澄清。 我用 .NET 4.0.2 要求更新了答案。他提到的其他问题的细节还不清楚,请参阅this thread了解一些背景。 @JohnNguyen 您仍然需要安装 LocalDB。它不附带.NET microsoft.com/en-us/download/details.aspx?id=42299 它是 LocalDB 64BIT\SqlLocalDB.msi 或 LocalDB 32BIT\SqlLocalDB.msi 在列表中 这确实有助于保存我的隐藏,因为我正准备使用本地 sdf 数据库完全重做我的应用程序,这意味着我将不得不使用 SQLServerCE... 这将花费数小时,因为它是 API是不同的,我已经用它编写了所有代码。我在想我应该从门口使用本地数据库,但我不想使用不熟悉的 SQLServerCE API ......所以我坚持使用基于服务的数据库,但随后在部署时遇到问题,因为我有一个完整版本部署计算机上的 SQL Server。我在那台机器上卸载了 SQL Server 并安装了 LocalDB! @Novaterata 你应该让你的评论成为答案。这就是它对我有用的原因。以上是关于客户端 PC 上的 LocalDB 部署的主要内容,如果未能解决你的问题,请参考以下文章
在 Integrated Security = False 的客户端计算机上将 SQL Compact 替换为 SQL LocalDB
使用带有实体框架的 winform 应用程序部署的应用程序在客户端 PC 上不起作用