实际上你有三个选项。你没有描述的选项是创建一个数据库,并使用SSMS设置连接到一个文件,选择由SSMS创建的MDB文件(你可能需要首先使用SSMS卸载数据库,以便让SQL Express释放其文件锁定)。当你创建连接到文件时,将提示你是否想要连接到它所在的位置,还是将其添加到项目中。
本地数据库可以采取两种形式,具体取决于你如何创建。有关详细信息,请参阅如何:在项目中管理本地数据文件。
客户端-服务器,SQL Express
如果你使用SSMS设置数据库并通过SQL Express连接到它,那么你没有一个本地数据库,而是拥有一个服务器恰好位于你工作站本地的数据库。
本地数据库,SQL Express
如果你使用SSMS设置数据库,并卸载数据库并将文件添加到项目中,则拥有一个使用私有SQL Express实例的本地数据库。
本地数据库,Compact Edition
如果你使用Visual Studio菜单创建新的数据库,则拥有一个本地的Compact Edition数据库。
SQL Express
当Visual Studio启动调试时,会启动一个私有命名实例的SQL Server Express,应用程序使用共享内存与其通信,而不是网络协议。
然而,完全没有任何阻止你安装运行为服务的SQL Express实例。你可以挂载相同的数据库文件(或其副本),并将其提供给网络。你甚至可以将它挂载在标准SQL甚至SQL Enterprise的实例上。
那么,为什么要在本地实例上进行操作呢?这对于多人开发团队有优势,因为开发人员可以修改其模式而不会干扰其他人。它允许桌面(而不是网络)软件的开发,尽管在当今时代,对该功能的需求正在减少。
根据您开发环境中拥有多少硬件,个人不会使用本地数据库。 SQL Server 占用内存较大,我更希望它在完全分离的机器上运行。
请注意以下一些事项
- 除了 Compact 和 Micro 版本外,所有版本的 MSSQL 的 TSQL 完全相同。
- 在环境方面,SQL Express 限制数据库大小为 4G,虽然我认为 R2 的大小增加到了 8G。这不太可能对开发造成影响,但可能会影响测试人员。
- 某些 SQL Server Reporting Services 功能在更便宜的版本中不可用。
SQL Server Compact Edition
关于此的信息非常稀少。 Microsoft 的版本比较没有考虑 Compact 或 Micro 版本。 Compact 版本网页上的部分介绍声称具有完整的 TSQL 兼容性。SDF 是一个一体化文件;没有单独的日志文件。从 SDF 到客户端-服务器的路径肯定比 SQL Express 更不直接,但它似乎是一个支持的选项,因为 msdn 上有关于此主题的文章。
复制工具可用于 Compact 版本,以便在偶尔连接的系统(也称为文件夹模型)中将其用作本地数据库缓存。文件夹模型需要更仔细的总体系统设计,但它具有很多优点:单用户独立系统的所有性能和简单性,以及客户端-服务器系统的大部分优点。
结论
对于您的目的,我会选择 Compact Edition 选项。其他解决方案的开销和复杂性旨在解决您没有且永远不会遇到的问题。它们旨在解决网络化、大规模环境中团队开发的问题,具有正式发布周期。
您很幸运,可以保持简单。 Visual Studio 中的工具也更好用。
添加新项->本地数据库
将在您的项目中添加一个SQL Server Compact Edition(CE)数据库实例(单个.sdf文件)。这是一个“嵌入式”的单用户本地数据库-它不是SQL Server Express(也不是服务器产品)! - marc_s