我是C#和SQL Server数据库的新手,所以这可能是一个愚蠢的问题,但我很困惑。
我想在安装我的应用程序时自动在客户端计算机上设置嵌入式数据库。我知道SQL Server Compact Edition存在,但SQL Server CE中有很多限制。
我可以将.mdf
个文件用作嵌入式数据库吗?如果是,那么如何在客户端计算机上自动设置它?或者还有其他选择来解决我的问题吗?
答案 0 :(得分:0)
我建议使用SQLite。部署起来更简单。此外,SQL Server Compact似乎已停止使用。
Is SQL Server Compact discontinued from Visual Studio 2013?
您可以使用不要求在客户端计算机上进行任何安装的SQLite。
SQLite依赖于Visual C ++运行时,但您不需要在客户端计算机上安装它。 system.data.sqlite下载页面包含几个已包含运行时的“静态”包。
所有“静态”软件包都包含本机或混合模式程序集 二进制文件静态链接到适当的Visual版本 C ++运行时。通常,这些包用于以下情况 客户机可能没有必要的Visual C ++版本 运行时已安装且由于受限而无法安装 特权。
例如,在我的机器上,我运行的是Windows 8.1 x64,因此我使用了预编译的静态链接二进制文件,用于64位Windows(.NET Framework 4.0)并下载了sqlite-netFx40-static-binary-x64-2010-1.0 .90.0.zip。
此二进制包包含x64版本的所有二进制文件 System.Data.SQLite 1.0.90.0(3.8.2)包。 Visual C ++ 2010 x64的SP1运行时是静态链接的。 .NET Framework 4.0是 必需的。
然后我解压缩包并运行test.exe以确保一切正常。需要零安装。