C# 在没有服务器的情况下连接到 MSSQL .mdf 数据库

C# connect to MSSQL .mdf DB without Server

如何在没有SQL服务器的电脑(比如普通用户的XP)上运行 x86 .net 3.5 Windows Forms app with .mdf database。

我发现的连接字符串样本很少,但它们都包含类似 Data Source=.\SQLEXPRESS

的内容

怀疑,该用户将在他的计算机上安装 SQLEXPRESS。我想要像使用 Access 数据库这样的东西——这样用户就可以在不知道什么是服务器的情况下工作,只使用本地文件

MSSQL 我选择了而不是 Access,因为将来我可以在服务器上添加发布数据库,但现在不行。

也许,我应该使用 SQLLite,但在那种情况下怎么办?

谢谢。

How can I ran x86 .net 3.5 Windows Forms app with .mdf database on the computer without SQL Server?

这个问题的答案很简单 - 你不能!

您必须随您的应用程序分发和安装一些 version/edition 的 SQL 服务器,否则 .mdf 文件只不过是磁盘的浪费 space。您可以将 SQL 服务器与您的应用程序一起安装。有关详细信息,请参阅 Install SQL Server from the Command Prompt and Install SQL Server using a configuration file. If this is a simple app working locally on a single workstation, you may want to consider using SQL Server Express LocalDB.

另一种选择是使用不同的数据库引擎,它更容易部署和嵌入 - SQLite, Firebird Embedded,等等。选择一个你喜欢的。大多数这些解决方案只需要在您的应用程序中分发一个 DLL/assembly。您不会获得 SQL 服务器的全部功能,但对于大多数应用程序而言,无论如何都不需要它。